vue 插件的方法代码详解


Posted in Javascript onJune 06, 2019

在开发项目的时候,我们一般都用 vue-cli 来避免繁琐的 webpack 配置和 template 配置。但是官方 cli3 现在并不支持搭建 plugin 开发的项目。

还好,已经有大神(Kazupon)走在了我们前面,我们就用现成的 vue-cli-plugin-p11n 。

如果你没有安装 vue-cli,请先安装

npm i -g @vue/cli

首先,搭建项目

vue create [your plugin name] && cd [your plugin name]
vue add p11n

这样我们就有了一个初始化的插件开发环境。

install 方法

开发 vue 插件其实就是写一个 install 方法,然后把这个方法暴露出来给你的用户,他们就可以用 Vue.use(plugin) 载入插件了。

借用 vue 官方 API 上的解释: 如果插件是一个对象,必须提供 install 方法。如果插件是一个函数,它会被作为 install 方法。install 方法调用时,会将 Vue 作为参数传入。 该方法需要在调用 new Vue() 之前被调用。 当 install 方法被同一个插件多次调用,插件将只会被安装一次。

export const install = function (Vue, options) {
 // Vue 就是 vue 实例
 // options 就是 Vue.use(plugin,options) 传入的第二个参数 options
 // 1. 添加全局方法或属性
 Vue.myGlobalMethod = function () {
  // 逻辑...
 }
 // 2. 添加全局资源
 Vue.directive('my-directive', {
  bind (el, binding, vnode, oldVnode) {
   // 逻辑...
  }
  ...
 })
 // 3. 注入组件选项
 Vue.mixin({
  created: function () {
   // 逻辑...
  }
  ...
 })
 // 4. 添加实例方法
 Vue.prototype.$myMethod = function (methodOptions) {
  // 逻辑...
 }
}

发布插件

p11n 已经帮助我们部署好了大部分 package.json 配置,只需要自己填写好 name,author,license,repository,description,keywords 这几个选项就可以了。

# login npm
npm login
# patch version
npm version patch
# publish
npm publish --access public

我自己写了一个非常简单的插件 vue-chart ,可以作为参考。

总结

以上所述是小编给大家介绍的vue 插件的方法代码详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
jQuery窗口、文档、网页各种高度的精确理解
Jul 02 Javascript
JS遍历Json字符串中键值对先转成JSON对象再遍历
Aug 15 Javascript
JavaScript中点击事件的写法
Jun 28 Javascript
AngularJS 与Bootstrap实现表格分页实例代码
Oct 14 Javascript
JS正则子匹配实例分析
Dec 22 Javascript
angular.js中解决跨域问题的三种方式
Jul 12 Javascript
vue mintui-Loadmore结合实现下拉刷新和上拉加载示例
Oct 12 Javascript
原生JS获取元素的位置与尺寸实现方法
Oct 18 Javascript
vue基于mint-ui实现城市选择三级联动
Jun 30 Javascript
原来JS还可以这样拆箱转换详解
Feb 01 Javascript
JavaScript实现随机点名器实例详解
May 07 Javascript
jquery插件懒加载的示例
Oct 24 jQuery
jquery+ajax实现上传图片并显示上传进度功能【附php后台接收】
Jun 06 #jQuery
node.js的http.createServer过程深入解析
Jun 06 #Javascript
vue中keep-alive组件的入门使用教程
Jun 06 #Javascript
vue2配置scss的方法步骤
Jun 06 #Javascript
JavaScript中将值转换为字符串的五种方法总结
Jun 06 #Javascript
详解Vue 如何监听Array的变化
Jun 06 #Javascript
js常见遍历操作小结
Jun 06 #Javascript
You might like
stripos函数知识点实例分享
2019/02/11 PHP
JavaScript之appendChild、insertBefore和insertAfter使用说明
2010/12/30 Javascript
Ajax 数据请求的简单分析
2011/04/05 Javascript
基于jquery的二级联动菜单实现代码
2011/04/25 Javascript
JS JSON对象转为字符串的简单实现方法
2013/11/18 Javascript
node.js 开发指南 ? Node.js 连接 MySQL 并进行数据库操作
2014/07/29 Javascript
HTML5+jQuery插件Quicksand实现超酷的星际争霸2兵种分类展示效果(附demo源码下载)
2016/05/25 Javascript
详解jQuery简单的表单应用
2016/12/16 Javascript
js 用于检测类数组对象的函数方法
2017/05/02 Javascript
详解Angular 4.x NgIf 的用法
2017/05/22 Javascript
jQuery Pagination分页插件_动力节点Java学院整理
2017/07/17 jQuery
浅谈Angular7 项目开发总结
2018/12/19 Javascript
node.js实现微信开发之获取用户授权
2019/03/18 Javascript
微信小程序云开发如何使用云函数生成二维码
2019/05/18 Javascript
python判断一个集合是否包含了另外一个集合中所有项的方法
2015/06/30 Python
Python中列表、字典、元组数据结构的简单学习笔记
2016/03/20 Python
python负载均衡的简单实现方法
2018/02/04 Python
最小二乘法及其python实现详解
2020/02/24 Python
Python处理PDF与CDF实例
2020/02/26 Python
pycharm设置默认的UTF-8编码模式的方法详解
2020/06/01 Python
浅析CSS3中鲜为人知的属性:-webkit-tap-highlight-color
2017/01/12 HTML / CSS
详解移动端html5页面长按实现高亮全选文本内容的兼容解决方案
2016/12/03 HTML / CSS
巴西手表购物网站:eclock
2019/03/19 全球购物
什么是"引用"?申明和使用"引用"要注意哪些问题?
2016/03/03 面试题
什么是Smart Navigation?
2016/07/03 面试题
卫校护理专业毕业生求职信
2013/11/26 职场文书
电脑租赁公司创业计划书
2014/01/08 职场文书
年度考核自我评价
2014/01/25 职场文书
歌颂祖国的演讲稿
2014/05/04 职场文书
党支部三会一课计划
2014/09/24 职场文书
医院护士党的群众路线教育实践活动对照检查材料思想汇报
2014/10/04 职场文书
文明单位创建材料
2014/12/24 职场文书
简短清晨问候语
2015/11/10 职场文书
《法国号》教学反思
2016/02/22 职场文书
利用uni-app生成微信小程序的踩坑记录
2022/04/05 Javascript
MySQL中的全表扫描和索引树扫描
2022/05/15 MySQL