使用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 相关文章推荐
非常不错的功能强大代码简单的管理菜单美化版
Jul 09 Javascript
DOM和XMLHttpRequest对象的属性和方法整理
Jan 04 Javascript
jquery实现全选和全不选功能效果的实现代码【推荐】
May 05 Javascript
JavaScript数组的定义及数字操作技巧
Jun 06 Javascript
很棒的js Tab选项卡切换效果
Aug 30 Javascript
利用D3.js实现最简单的柱状图示例代码
Dec 09 Javascript
JS+WCF实现进度条实时监测数据加载量的方法详解
Dec 19 Javascript
vue页面加载闪烁问题的解决方法
Mar 28 Javascript
详解基于mpvue的小程序markdown适配解决方案
May 08 Javascript
vue中的inject学习教程
Apr 24 Javascript
layui点击左侧导航栏,实现不刷新整个页面,只刷新局部的方法
Sep 25 Javascript
vuex存值与取值的实例
Nov 06 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中通过Ajax如何实现异步文件上传的代码实例
2011/05/07 PHP
php用户注册时常用的检验函数实例总结
2014/12/22 PHP
Laravel实现自定义错误输出内容的方法
2016/10/10 PHP
addRule在firefox下的兼容写法
2006/11/30 Javascript
select组合框option的捕捉实例代码
2008/09/30 Javascript
javascript demo 基本技巧
2009/12/18 Javascript
jQuery建立一个按字母顺序排列的友好页面索引(兼容IE6/7/8)
2013/02/26 Javascript
js获取滚动距离的方法
2015/05/30 Javascript
javascript实现给定半径求出圆的面积
2015/06/26 Javascript
jQuery UI仿淘宝搜索下拉列表功能
2017/01/10 Javascript
js省市区级联查询(插件版&无插件版)
2017/03/21 Javascript
微信小程序实现animation动画
2018/01/26 Javascript
vue实现图片加载完成前的loading组件方法
2018/02/05 Javascript
JS复杂判断的更优雅写法代码详解
2018/11/07 Javascript
图解javascript作用域链
2019/05/27 Javascript
JS数据类型STRING使用实例解析
2019/12/18 Javascript
JS实现数据动态渲染的竖向步骤条
2020/06/24 Javascript
微信小程序以7天为周期连续签到7天功能效果的示例代码
2020/08/20 Javascript
Vue中强制组件重新渲染的正确方法
2021/01/03 Vue.js
浅谈Python3中strip()、lstrip()、rstrip()用法详解
2019/04/29 Python
django中的图片验证码功能
2019/09/18 Python
python中执行smtplib失败的处理方法
2020/07/01 Python
html5 Web SQL Database 之事务处理函数transaction与executeSQL解析
2013/11/07 HTML / CSS
实例讲解利用HTML5 Canvas API操作图形旋转的方法
2016/03/22 HTML / CSS
中国第一家杂志折扣订阅网:杂志铺
2016/08/30 全球购物
工商管理实习生自我鉴定范文
2013/12/18 职场文书
农场厂长岗位职责
2013/12/28 职场文书
党员的自我评价范文
2014/01/02 职场文书
银行员工辞职信范文
2014/01/20 职场文书
物流管理系毕业生求职信
2014/06/03 职场文书
见习报告怎么写
2014/10/31 职场文书
篮球赛闭幕式主持词
2015/07/03 职场文书
决心书格式及范文
2019/06/24 职场文书
导游词之嵊泗列岛
2019/10/30 职场文书
从结婚开始的恋爱故事。小说《我的美好婚事》TV动画化决定
2022/04/07 日漫
CSS中calc(100%-100px)不加空格不生效
2023/05/07 HTML / CSS