在开发过程中经常会遇到以下需求:
超过父元素以后,内部文字显示省略号并且鼠标移上去出现弹窗,在父元素宽度内则不需要省略号且移上去不需要弹窗。
针对这个问题,本人写了基于vue的vue-directive-ellipsis插件,可以使用指令一句话解决这类问题
github地址:https://github.com/bmsherry/v-ellipsis
用法:
1.首先安装
npm i vue-directive-ellipsis -D
2.注册全局directive
import Vue from 'vue';
import Ellipsis from 'vue-directive-ellipsis';
import 'vue-directive-ellipsis/dist/ellipsis.umd.css';
Vue.directive('ellipsis', Ellipsis);
3.使用
<div id="app" v-ellipsis:bottom="message">
{{ message }}
</div>
// this is (demo code)
export default {
data(){
return {
message: 'Hello Vue!'
}
}
}
4.说明
directive arg参数有12个 表示popper出现的位置 可任选一个 默认值为bottom
arg枚举值为’top’,‘topstart’,‘topend’,‘left’,‘leftstart’,‘leftend’, ‘bottom’,‘bottomstart’,‘bottomend’,‘right’,‘rightstart’,‘rightend’