Vue.js自定义指令的用法与实例解析


Posted in Javascript onJanuary 18, 2017

市面上大多数关于Vue.js自定义指令的文章都在讲语法,很少讲实际的应用场景和用例,以致于即便明白了怎么写,也不知道怎么用。本文不讲语法,就讲自定义指令的用法。

自定义指令是用来操作DOM的。尽管Vue推崇数据驱动视图的理念,但并非所有情况都适合数据驱动。自定义指令就是一种有效的补充和扩展,不仅可用于定义任何的DOM操作,并且是可复用的。

比如谷歌图片的加载做得非常优雅,在图片未完成加载前,用随机的背景色占位,图片加载完成后才直接渲染出来。用自定义指令可以非常方便的实现这个功能。

Vue.js自定义指令的用法与实例解析

Vue.js自定义指令的用法与实例解析

效果:

Vue.js自定义指令的用法与实例解析

自定义指令的第二用处是用于集成第三方插件。我们知道任何软件开发领域都可以分为四层:底层是原生的API,上层是通用框架,再上层是通用组件,最上层才是具体的业务代码。一个通用框架,必须搭配一套完整的通用组件,才能真正奠定其江湖地位。

在前端开发领域,以前的通用框架是jQuery,jQuery以及基于jQuery构建的通用组件形成了一个庞大的生产系统。现在的通用框架是Angular、React和Vue,每个框架都需要基于自身构建新的组件库。自定义指令好就好在:原先的那些通用组件,无论是纯js的也好,基于jQuery的也好,都可以拿来主义直接吸收,而不需要改造或重构。

比如写文档通常会用到highlight.js,我们可以直接将其封装为一个自定义指令,这样highlight.js就变成了Vue的一个新功能。

Vue.js自定义指令的用法与实例解析

Vue.js自定义指令的用法与实例解析

效果:

Vue.js自定义指令的用法与实例解析

但凡遇到第三方插件如何与Vue.js集成的问题,都可以尝试用自定义指令实现。

以上所述是小编给大家介绍的Vue.js自定义指令的用法与实例解析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JQuery插件jcarousellite的参数中文说明
May 11 Javascript
Javascript中prototype属性实现给内置对象添加新的方法
May 14 Javascript
JavaScript仿静态分页实现方法
Aug 04 Javascript
jQuery ajax应用总结
Jun 02 Javascript
微信小程序开发实战教程之手势解锁
Nov 18 Javascript
谈谈JavaScript中浏览器兼容问题的写法小议
Dec 17 Javascript
详解AngularJS通过ocLazyLoad实现动态(懒)加载模块和依赖
Mar 01 Javascript
JavaScript手风琴页面制作
May 17 Javascript
解决vue打包之后静态资源图片失效的问题
Feb 21 Javascript
Vue入门之animate过渡动画效果
Apr 08 Javascript
vue项目打包后怎样优雅的解决跨域
May 26 Javascript
vue实现登录功能
Dec 31 Vue.js
vue.js+Element实现表格里的增删改查
Jan 18 #Javascript
JS中Array数组学习总结
Jan 18 #Javascript
原生javascript实现图片放大镜效果
Jan 18 #Javascript
jQuery Validation Engine验证控件调用外部函数验证的方法
Jan 18 #Javascript
原生js实现回复评论功能
Jan 18 #Javascript
js实现表格筛选功能
Jan 18 #Javascript
js放大镜放大购物图片效果
Jan 18 #Javascript
You might like
php实现ping
2006/10/09 PHP
php不用正则验证真假身份证
2013/11/06 PHP
php PDO实现的事务回滚示例
2017/03/23 PHP
Laravel 5.4前后台分离,通过不同的二级域名访问方法
2019/10/13 PHP
extjs DataReader、JsonReader、XmlReader的构造方法
2009/11/07 Javascript
jquery特效 幻灯片效果示例代码
2013/07/16 Javascript
用innerhtml提高页面打开速度的方法
2013/08/02 Javascript
JS中的this变量的使用介绍
2013/10/21 Javascript
JavaScript将数据转换成整数的方法
2014/01/04 Javascript
jQery使网页在显示器上居中显示适用于任何分辨率
2014/06/09 Javascript
JS中获取函数调用链所有参数的方法
2015/05/07 Javascript
jQuery-1.9.1源码分析系列(十一)DOM操作续之克隆节点
2015/12/01 Javascript
jQuery 更改checkbox的状态,无效的解决方法
2016/07/22 Javascript
Node.js connect ECONNREFUSED错误解决办法
2016/09/15 Javascript
详解angularJs指令的3种绑定策略
2017/04/13 Javascript
详解利用 Express 托管静态文件的方法
2017/09/18 Javascript
使用use注册Vue全局组件和全局指令的方法
2018/03/08 Javascript
Vuejs+vue-router打包+Nginx配置的实例
2018/09/20 Javascript
Angularjs实现数组随机排序的方法
2018/10/02 Javascript
vue与bootstrap实现简单用户信息添加删除功能
2019/02/15 Javascript
小程序如何在不同设备上自适应生成海报的实现方法
2019/08/20 Javascript
2019最新21个MySQL高频面试题介绍
2020/02/06 Javascript
js校验开始时间和结束时间
2020/05/26 Javascript
Python实现的最近最少使用算法
2015/07/10 Python
Python selenium如何设置等待时间
2016/09/15 Python
Python实现求两个csv文件交集的方法
2017/09/06 Python
使用numba对Python运算加速的方法
2018/10/15 Python
python 数据提取及拆分的实现代码
2019/08/26 Python
详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程
2020/03/25 Python
Python如何将装饰器定义为类
2020/07/30 Python
记一次高分屏下canvas模糊问题
2020/02/17 HTML / CSS
怎样在 Applet 中建立自己的菜单(MenuBar/Menu)?
2012/06/20 面试题
委托书怎么写
2014/07/31 职场文书
2014年计划生育协会工作总结
2014/11/14 职场文书
2015年实习班主任工作总结
2015/04/23 职场文书
2015迎新晚会开场白
2015/07/17 职场文书