使用use注册Vue全局组件和全局指令的方法


Posted in Javascript onMarch 08, 2018

Vue中的组件和指令分为局部组件、局部指令和全局组件、全局指令。对于注册有一定数量的全局指令和全局组件时,官方文档中的方法就显得有些不够清爽了。

全局组件

在Vue官方文档中介绍的是使用Vue.component(tagName, options)来创建一个全局组件。但是这种方法是与根实例写在同一个文件中,如果要同时注册多个全局组件,就会使根实例文件过重,因此使用Vue.use()来“安装”全局组件,就显得更轻一些。

方法:

1.新建一个plugins文件夹

2.在文件夹中创建放置全局组件的文件components.js

3.在components.js文件中引入所有要注册的全局组件

4.在app.js根实例文件中,引入components.js

以eg组件为例:

components.js:

import eg from '../components/eg.vue';
export default (Vue)=>{
 Vue.component("Eg",eg);
}

app.js:

import components from './plugins/components.js';
Vue.use(components);

经过上述编写后,就注册了全局组件Eg。

在需要注册多个全局组件的情况下,使用这种方式就显得更加清爽!

全局指令

对于全局指令的注册,官方文档给出的方法是使用Vue.directive(),位置同样是在根实例文件下,那么问题来了,如果多个全局指令,再加上多个全局组件,那么app.js文件将变得臃肿无比。

因此,同上面的注册全局组件方法相似,也是使用Vue.use()来“安装”全局指令。

方法:

1.新建一个plugins文件夹

2.在文件夹中创建放置全局组件的文件directives.js

3.在directives.js文件中引入所有要注册的全局指令

4.在app.js根实例文件中,引入directives.js

以v-focus指令为例:

directives.js:

export default (Vue)=>{
 Vue.directive("focus",{
  inserted:function(el){
   el.focus();
  }
 })
}

app.js

import directives from "./plugins/directives.js"
Vue.use(directives);

这样就注册了全局指令。

以上这篇使用use注册Vue全局组件和全局指令的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js获取GridView中行数据的两种方法 分享
Jul 13 Javascript
解决Extjs4中form表单提交后无法进入success函数问题
Nov 26 Javascript
jquery实现tr元素的上下移动示例代码
Dec 20 Javascript
javascript格式化指定日期对象的方法
Apr 21 Javascript
js插件Jcrop自定义截取图片功能
Oct 14 Javascript
jQuery排序插件tableSorter使用方法
Feb 10 Javascript
原生js实现放大镜特效
Mar 08 Javascript
微信小程序日历组件calendar详解及实例
Jun 08 Javascript
vue-router懒加载速度缓慢问题及解决方法
Nov 25 Javascript
详解微信小程序实现仿微信聊天界面(各种细节处理)
Feb 17 Javascript
vue-cli3使用mock数据的方法分析
Mar 16 Javascript
解决await在forEach中不起作用的问题
Feb 25 Javascript
vue注册组件的几种方式总结
Mar 08 #Javascript
Vue.js自定义事件的表单输入组件方法
Mar 08 #Javascript
layui之select的option叠加问题的解决方法
Mar 08 #Javascript
vue2.0 axios跨域并渲染的问题解决方法
Mar 08 #Javascript
解决Vue 通过下表修改数组,页面不渲染的问题
Mar 08 #Javascript
Vue.js实现图片的随意拖动方法
Mar 08 #Javascript
JS字符串去除连续或全部重复字符的实例
Mar 08 #Javascript
You might like
PHP简洁函数小结
2011/08/12 PHP
PHP+FastCGI+Nginx配置PHP运行环境
2014/08/07 PHP
详细解读PHP中接口的应用
2015/08/12 PHP
分享PHP计算两个日期相差天数的代码
2015/12/23 PHP
PHP中Socket连接及读写数据超时问题分析
2016/07/19 PHP
PHP二维关联数组的遍历方式(实例讲解)
2017/10/18 PHP
Thinkphp5框架实现获取数据库数据到视图的方法
2019/08/14 PHP
直接生成打开窗口代码,不必下载
2008/05/14 Javascript
利用jQuery的$.event.fix函数统一浏览器event事件处理
2009/12/21 Javascript
IE6已终止操作问题的2种情况及解决
2014/04/23 Javascript
鼠标左键单击冲突的问题解决方法(防止冒泡)
2014/05/14 Javascript
js获取input长度并根据页面宽度设置其大小及居中对齐
2014/08/22 Javascript
AngularJS自定义控件实例详解
2016/12/13 Javascript
Angular.JS中指令ng-if的注意事项小结
2017/06/21 Javascript
mui框架移动开发初体验详解
2017/10/11 Javascript
详解如何快速配置webpack多入口脚手架
2018/12/28 Javascript
jQuery实现鼠标放置名字上显示详细内容气泡提示框效果的方法分析
2020/04/04 jQuery
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
Django使用httpresponse返回用户头像实例代码
2018/01/26 Python
Python SVM(支持向量机)实现方法完整示例
2018/06/19 Python
在Python中关于使用os模块遍历目录的实现方法
2019/01/03 Python
纯python进行矩阵的相乘运算的方法示例
2019/07/17 Python
Django 创建/删除用户的示例代码
2019/07/24 Python
几款好用的python工具库(小结)
2020/10/20 Python
scrapy头部修改的方法详解
2020/12/06 Python
英国健身超市:Fitness Superstore
2019/06/17 全球购物
电子商务求职信
2014/06/15 职场文书
酒店周年庆活动方案
2014/08/21 职场文书
学习党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
退休教师追悼词
2015/06/23 职场文书
2015年计算机教学工作总结
2015/07/22 职场文书
应届生个人的求职(自荐信范文2篇)
2019/08/23 职场文书
选对餐饮营销策略,营业额才会上涨
2019/08/27 职场文书
基于Redis的List实现特价商品列表功能
2021/08/30 Redis
用Python实现屏幕截图详解
2022/01/22 Python
开发者首先否认《遗弃》被取消的传言
2022/04/11 其他游戏