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 相关文章推荐
一段实现页面上的图片延时加载的js代码
Feb 11 Javascript
js最简单的拖拽效果实现代码
Sep 24 Javascript
treepanel动态加载数据实现代码
Dec 15 Javascript
jQuery异步验证用户名是否存在示例代码
May 21 Javascript
如何通过非数字与字符的方式实现PHP WebShell详解
Jul 02 Javascript
ReactNative短信验证码倒计时控件的实现代码
Jul 20 Javascript
JS SetInterval 代码实现页面轮询
Aug 11 Javascript
15分钟深入了解JS继承分类、原理与用法
Jan 19 Javascript
js中offset,client , scroll 三大元素知识点总结
Sep 11 Javascript
jQuery+css实现的点击图片放大缩小预览功能示例【图片预览 查看大图】
May 29 jQuery
vue实现购物车加减
May 30 Javascript
详解Vite的新体验
Feb 22 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
php递归遍历多维数组的方法
2015/04/18 PHP
CI框架常用经典操作类总结(路由,伪静态,分页,session,验证码等)
2016/11/21 PHP
PHP实现微信小程序人脸识别刷脸登录功能
2018/05/24 PHP
PHP获取日期对应星期、一周日期、星期开始与结束日期的方法
2018/06/22 PHP
用 JavaScript 迁移目录
2006/12/18 Javascript
解析arp病毒背后利用的Javascript技术附解密方法
2007/08/06 Javascript
javascript中typeof操作符和constucor属性检测
2015/02/26 Javascript
JS动态创建DOM元素的方法
2015/06/09 Javascript
JS获取下拉框显示值和判断单选按钮的方法
2015/07/09 Javascript
jquery利用拖拽方式在图片上添加热链接
2015/11/24 Javascript
jQuery Pagination分页插件使用方法详解
2017/02/28 Javascript
js精确的加减乘除实例
2017/11/14 Javascript
Angular 5.0 来了! 有这些大变化
2017/11/15 Javascript
新手入门带你学习JavaScript引擎运行原理
2019/06/24 Javascript
JavaScript工具库MyTools详解
2020/01/01 Javascript
在Django框架中设置语言偏好的教程
2015/07/27 Python
Python获取网段内ping通IP的方法
2019/01/31 Python
将python文件打包成EXE应用程序的方法
2019/05/22 Python
pytorch加载自己的图像数据集实例
2020/07/07 Python
移动端适配 使px自动转换rem
2019/08/26 HTML / CSS
CSS3 实现footer 固定在底部(无论页面多高始终在底部)
2019/10/15 HTML / CSS
HTML5 对各个标签的定义与规定:body的介绍
2012/06/21 HTML / CSS
Stuart Weitzman美国官网:美国奢华鞋履品牌
2016/08/18 全球购物
巴基斯坦电子产品购物网站:Home Shopping
2017/09/14 全球购物
英国灯具和灯泡网上商店:Lights.co.uk
2018/02/02 全球购物
性能服装:HYLETE
2018/08/14 全球购物
经典优秀个人求职自荐信格式
2013/09/25 职场文书
干部对照检查材料范文
2014/08/26 职场文书
工作作风承诺书
2014/08/30 职场文书
学校运动会广播稿范文
2014/10/02 职场文书
践行党的群众路线心得体会
2014/11/05 职场文书
股权转让协议书
2014/12/07 职场文书
2014年节能工作总结
2014/12/18 职场文书
2015年工商局个人工作总结
2015/07/23 职场文书
基于JavaScript实现省市联动效果
2021/06/22 Javascript
idea以任意顺序debug多线程程序的具体用法
2021/08/30 Java/Android