Vue中建立全局引用或者全局命令的方法


Posted in Javascript onAugust 21, 2017

如何在Vue中建立全局引用或者全局命令,具体内容如下

1 一般在vue中,有很多vue组件,这些组件每个都是一个文件。都可能需要引用到相同模块(或者插件)。我们不想每个文件都import 一次模块。

如果是基于vue.js编写的插件我们可以用 Vue.use(...)

main.js

Vue中建立全局引用或者全局命令的方法

2 但是如果想添加一个全局命令,同时又让每个vue的文件都能用到怎么办?

第一步:最好建立一个全局的命令文件例如:directive/directive.js

第二步:利用Vue.directive()建立一个全局命令,并将它暴露出来,例如一个focus 让表单自动聚焦

directive.js

Vue中建立全局引用或者全局命令的方法

第三部步:在main.js(入口JS文件)中将它引入,可以省略文件后缀

main.js

Vue中建立全局引用或者全局命令的方法

这样任何一个Vue文件只要这样v-focus(命令名),就可以很方便的用到了

Vue中建立全局引用或者全局命令的方法

3 Vue.directive() 的命令一般都是自动运行的或者说初始化等等触发的,并不能用于异步事件,怎么办?

于是我们可以用到'mixins'混合命令,你最好建立一个专门的文件夹用于存放混合命令,例如:

mixins.js

Vue中建立全局引用或者全局命令的方法

比如saveScrollPosition (不是vue中的saveScrollPosition)可以每次在路由跳转之间保存住浏览位置信息

注意:vue2.0 中 路由跳转之间会自动保存位置信息 但是有Bug(位置信息之间会相互干扰)。

所以我们从新写一个saveScrollPosition暴露出去后,在你需要的页面中混入

Vue中建立全局引用或者全局命令的方法

Vue中建立全局引用或者全局命令的方法

这样就会很方便。

4 如果你需要应用一个插件,同时他并不是基于vue.js的插件命令编写的,那你可以将它赋予Vue的原型上

例如:我想全局引用axios,我们可以这样

main.js

Vue中建立全局引用或者全局命令的方法

然后this.$http.get(url) 等等

xxx.vue

Vue中建立全局引用或者全局命令的方法

5 将需要的变量挂在到window对象上

例如:第三方库Lodash.js,moment.js等等

main.js

Vue中建立全局引用或者全局命令的方法

xxx.vue

Vue中建立全局引用或者全局命令的方法

注意:这种方式不适合服务端渲染,服务端并没有window对象

强调一点:以上所有的引入都必须通过入口JS文件去引入,这样才能适用于全局

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery实现长按按钮触发事件的方法
Feb 02 Javascript
使用JavaScript实现连续滚动字幕效果的方法
Jul 07 Javascript
js实现动态加载脚本的方法实例汇总
Nov 02 Javascript
js判断请求的url是否可访问,支持跨域判断的实现方法
Sep 17 Javascript
用瀑布流的方式在网页上插入图片的简单实现方法
Sep 23 Javascript
详解本地Node.js服务器作为api服务器的解决办法
Feb 28 Javascript
JavaScript模块化之使用requireJS按需加载
Apr 12 Javascript
vue router嵌套路由在history模式下刷新无法渲染页面问题的解决方法
Jan 25 Javascript
Vue入门之数量加减运算操作示例
Dec 11 Javascript
使用Node.js实现一个多人游戏服务器引擎
Mar 13 Javascript
LayUi数据表格自定义赋值方式
Oct 26 Javascript
vue和iview实现Scroll 数据无限滚动功能
Oct 31 Javascript
JS实现身份证输入框的输入效果
Aug 21 #Javascript
Vue自定义指令使用方法详解
Aug 21 #Javascript
javascript实现Java中的Map对象功能的实例详解
Aug 21 #Javascript
Vue ElementUI之Form表单验证遇到的问题
Aug 21 #Javascript
JavaScript中各数制转换全面总结
Aug 21 #Javascript
JQuery判断正整数整理小结
Aug 21 #jQuery
温故知新——JavaScript中的字符串连接问题最全总结(推荐)
Aug 21 #Javascript
You might like
cmd下运行php脚本
2008/11/25 PHP
使用Smarty 获取当前日期时间和格式化日期时间的方法详解
2013/06/18 PHP
php解析html类库simple_html_dom(详细介绍)
2013/07/05 PHP
Fatal error: session_start(): Failed to initialize storage module: files问题解决方法
2014/05/04 PHP
Gambit vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
javascript 原型模式实现OOP的再研究
2009/04/09 Javascript
扩展js对象数组的OrderByAsc和OrderByDesc方法实现思路
2013/05/17 Javascript
DropDownList控件绑定数据源的三种方法
2016/12/24 Javascript
高效的jQuery代码编写技巧总结
2017/02/22 Javascript
Angular+Bootstrap+Spring Boot实现分页功能实例代码
2017/07/21 Javascript
JS实现电商放大镜效果
2017/08/24 Javascript
快速处理vue渲染前的显示问题
2018/03/05 Javascript
vue2.0 中使用transition实现动画效果使用心得
2018/08/13 Javascript
JavaScript中set与get方法用法示例
2018/08/15 Javascript
详解ES6新增字符串扩张方法includes()、startsWith()、endsWith()
2020/05/12 Javascript
tensorflow 输出权重到csv或txt的实例
2018/06/14 Python
Sanic框架应用部署方法详解
2018/07/18 Python
Python实现Dijkstra算法
2018/10/17 Python
python 基于UDP协议套接字通信的实现
2021/01/22 Python
使用CSS3代码绘制可爱的Hello Kitty猫
2016/08/03 HTML / CSS
护理专业本科生自荐信
2013/10/01 职场文书
医学专业本科毕业生自我鉴定
2013/12/28 职场文书
销售人员获奖感言
2014/02/05 职场文书
教师评语大全
2014/04/28 职场文书
文员求职信
2014/07/15 职场文书
小学生校园广播稿
2014/09/28 职场文书
森马旗舰店双十一营销方案
2014/09/29 职场文书
小升初自荐信范文
2015/03/05 职场文书
公司档案管理制度
2015/08/05 职场文书
男方家长婚礼答谢词
2015/09/29 职场文书
《巨人的花园》教学反思
2016/02/19 职场文书
pytorch MSELoss计算平均的实现方法
2021/05/12 Python
总结Python常用的魔法方法
2021/05/25 Python
Python3中最常用的5种线程锁实例总结
2021/07/07 Python
Python中time与datetime模块使用方法详解
2022/03/31 Python
不想升级Win11?教你彻底锁定老版Windows系统的方法(附下载地址)
2022/09/23 数码科技