超实用Vue自定义指令合集快快网络

北京中西皮肤科医院 http://m.39.net/disease/a_9296294.html

在Vue2.0中,代码复用和抽象的主要形式是组件。然而,有的情况下,你仍然需要对普通DOM元素进行底层操作,这时候就会用到自定义指令。

你可以将一些css样式抽象到指令中,也可以将一些js操作放到指令中去执行。就使用上来说,指令不用像组件一样需要引入和注册,注册后使用非常简洁方便。

对于在项目中常用到的指令,在此做了一个合集介绍。

元素点击范围扩展指令v-expandClick

使用该指令可以隐式的扩展元素的点击范围,由于借用伪元素实现,故不会影响元素在页面上的排列布局。

可传入的参数为:上右下左扩展的范围,单位px,默认向外扩展10px。

文本内容复制指令v-copy

使用该指令可以复制元素的文本内容(指令支持单击复制v-copy、双击复制v-copy.dblclick、点击icon复制v-copy.icon三种模式),不传参数时,默认使用单击复制。

元素全屏指令v-screenfull

全屏指令,点击元素进行全屏/退出全屏的操作。支持元素后面是否插入element-ui的全屏图标el-icon-full-screen。

元素说明指令v-tooltip

为元素添加说明,如同element-ui的el-tooltip(问号icon在鼠标覆盖后,展示说明文字)。

文字超出省略指令v-ellipsis

使用该指令当文字内容超出宽度(默认px)时自动变为省略形式。等同于使用css:

width:px;

whiteSpace:nowrap

overflow:hidden;

textOverflow:ellipsis;

回到顶部指令v-backtop

使用该指令可以让页面或指定元素回到顶部。

可选指定元素,如果不指定则全局页面回到顶部。可选在元素偏移多少px后显示backtop元素;还可以在模板中任何元素上使用新的元素v-backtopproperty。

也可以这样使用,表示为一直显示绑定指令的元素,并且是全局页面回到顶部:

divv-backtop回到顶部/div

空状态指令v-empty

使用该指令可以显示缺省的空状态。可以传入默认图片(可选,默认无图片)、默认文字内容(可选,默认为暂无数据)、以及标示是否显示空状态(必选)。

徽标指令v-badge

使用该指令在元素右上角显示徽标。

支持配置徽标的背景颜色、徽标形状;支持传入徽标上显示的数字。

拖拽指令v-drag

使用该指令可以对元素进行拖拽。

响应缩放指令v-resize

使用该指令可以响应元素宽高改变时执行的方法。

如何使用这些指令?

为了便于管理指令,我们将每个指令都存在于单独的js文件中,你可以像这样将指令import进来后注册指令:

或者你可以直接使用Vue.deirect进行注册。




转载请注明:http://www.aierlanlan.com/cyrz/2883.html