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 相关文章推荐
javascript KeyDown、KeyPress和KeyUp事件的区别与联系
Dec 03 Javascript
javascript的函数、创建对象、封装、属性和方法、继承
Mar 10 Javascript
JavaScript高级程序设计 阅读笔记(四) ECMAScript中的类型转换
Feb 27 Javascript
jquery 插件学习(六)
Aug 06 Javascript
jQuery学习笔记之jQuery.extend(),jQuery.fn.extend()分析
Jun 09 Javascript
jquery实现可旋转可拖拽的文字效果代码
Jan 27 Javascript
JavaScript中绑定事件的三种方式及去除绑定
Nov 05 Javascript
bootstrap fileinput 插件使用项目总结(经验)
Feb 22 Javascript
基于模板引擎Jade的应用(详解)
Dec 12 Javascript
解决vue处理axios post请求传参的问题
Mar 05 Javascript
elementUI多选框反选的实现代码
Apr 03 Javascript
Element实现表格分页数据选择+全选所有完善批量操作
Jun 07 Javascript
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
如何使用PHP计算上一个月的今天
2013/05/23 PHP
php防止网站被刷新的方法汇总
2014/12/01 PHP
Yii2增删改查之查询 where参数详细介绍
2016/08/08 PHP
js 调整select 位置的函数
2008/02/21 Javascript
离开页面时检测表单元素是否被修改,提示保存的js代码
2010/08/25 Javascript
初学js插入节点appendChild insertBefore使用方法
2011/07/04 Javascript
情人节单身的我是如何在敲完代码之后收到12束玫瑰的(javascript)
2015/08/21 Javascript
JS实现鼠标滑过折叠与展开菜单效果代码
2015/09/06 Javascript
深入理解bootstrap框架之入门准备
2016/10/09 Javascript
js实现砖头在页面拖拉效果
2020/11/20 Javascript
浅析BootStrap中Modal(模态框)使用心得
2016/12/24 Javascript
vue 实现tab切换保持数据状态
2020/07/21 Javascript
[02:41]辉夜杯现场一家三口 “我爸玩风行 我玩血魔”
2015/12/27 DOTA
利用Python生成文件md5校验值函数的方法
2017/01/10 Python
python计算auc指标实例
2017/07/13 Python
Python实现生成随机数据插入mysql数据库的方法
2017/12/25 Python
python将print输出的信息保留到日志文件中
2019/09/27 Python
详解Python IO口多路复用
2020/06/17 Python
Python常用类型转换实现代码实例
2020/07/28 Python
目前不被任何主流浏览器支持的CSS3属性汇总
2014/07/21 HTML / CSS
利用CSS3动画实现圆圈由小变大向外扩散的效果实例
2018/09/10 HTML / CSS
HTML5录音实践总结(Preact)
2020/05/07 HTML / CSS
澳大利亚珍珠首饰购物网站:Vayo Pearls
2019/03/11 全球购物
工商企业管理应届生求职信
2013/11/03 职场文书
杠杆的科学教学反思
2014/01/10 职场文书
党员干部承诺书范文
2014/03/25 职场文书
质量承诺书怎么写
2014/05/24 职场文书
应届大学生求职信
2014/07/20 职场文书
新闻学专业求职信
2014/07/28 职场文书
我的中国梦演讲稿高中篇
2014/08/19 职场文书
坚守艰苦奋斗精神坚决反对享乐主义整改措施
2014/09/17 职场文书
《爱的教育》读书心得
2014/11/08 职场文书
高考学习决心书
2015/02/04 职场文书
运动会运动员赞词
2015/07/22 职场文书
AJAX实现指定部分页面刷新效果
2021/10/16 Javascript
《艾尔登法环》Boss腐烂树灵很有可能是《黑暗之魂3》的一个废案
2022/04/11 其他游戏