網站首頁 編程語言 正文
場景
有天邊上的同事問了我一個問題,示例如下,有個數據特別長,導致下拉部分被橫向撐大。希望在全局對所有的option
進行處理,按照select
的寬度,超出隱藏。
處理
方式一
第一眼看過去直接修改源碼好了,修改一下樣式,再配合patch-package
做一個補丁包即可。
方式二
轉念一想,要么直接覆蓋原有的el-option
組件唄。拷貝option.vue
文件到本地,按要求修改完成后,將其注冊為全局組件,保持命名一致即可
方式三
添加一個鼠標事件監聽,手動添加title
屬性(有一丟丟延遲)
document.addEventListener('mouseenter', e => {
var event = e || window.event;
var target = event.target || event.srcElement;
if (target.className.indexOf('el-select-dropdown__item') > -1) {
target.setAttribute("title", target.children[0].innerHTML);
}
}, true)
方式四
同事看了一眼說這幾種方法不夠優雅,有什么更高大上點的處理方式嗎?我想了一下,行吧,直接掏箱底。
從element-ui
源碼上看,el-option
綁定的是currentLabel
,想要全局處理,那直接擴展一個功能吧
示例如下
import Vue from 'vue'
import ElementUI from 'element-ui';
Vue.component('el-option', {
extends: ElementUI.Option,
mounted(){
// 當option掛載時,設置一個title屬性
this.$el.setAttribute('title',this.currentLabel)
}
})
再加個樣式,看一下效果,完美解決
原文鏈接:https://blog.csdn.net/a736755244/article/details/131844554
- 上一篇:沒有了
- 下一篇:沒有了
相關推薦
- 2022-05-04 python運算符+條件結構+循環結構_python
- 2021-12-01 阻止谷歌瀏覽器彈出記住密碼的彈框
- 2022-11-03 通過VS下載的NuGet包修改其下載存放路徑的操作方法_python
- 2022-07-26 ubuntu18.04+cuda10.2+tensorrt8.4.1.5配置安裝
- 2022-04-07 C++11實現字符串分割的示例_C 語言
- 2022-08-19 python循環之彩色圓環實現示例_python
- 2022-12-31 Kotlin?Jetpack組件ViewModel使用詳解_Android
- 2023-11-22 Linux的vim命令如何使用
- 欄目分類
-
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支