自定义vue组件发布到npm
2017-06-23 15:54
801 查看
自定义组件打包发布
为什么会有这个想法呢,主要是vue项目中自定义的组件在多个项目中使用。导致修改bug的时候,总是要在项目分支中修改,然后同步到主线上,这样容易导致分支修改后没有同步到主线,慢慢的就会导致组件版本不统一,而导致升级组件很繁琐,最后可能都要去维护多个组件的不同版本,这样不是我们想要的。所以就打算将组件打包发布到npm上,每个项目中只需要在package.json中修改组件版本即可同步最新版本。
组件发布历程
1、开始对打包不是很了解,只是简单的将原有.vue文件以及相关的css、image资源进行提取,然后放到一个项目下,下面是发布组件到npm的详细步骤:
(1)新建组件项目,通过npm init来初始化一个package.json文件
(2)将提取出来的组件放到项目路径。
(3)在package.json所在目录,执行npm adduser。这里需要注册npm帐号
(4)然后要求输入用户名、密码、注册时填的邮箱。如图:
(5)然后输入npm publish即可。
如果不出以外,组件就已经发布成功了,可以通过npm install xxxx来进行安装了。
2、在使用过程中发现了一些小问题。由于当时在index.js中使用了es6的部分语法(如:数组的map、const),导致在低版本ie中会报错,虽然可以通过修改js来解决。但是作为一个有理想有抱负的码农,这种事情不能忍,因为想element-ui这些组件都是可以将.vue文件打包之后发布的。然后就想着也要弄好了。
3、然后就开始研究怎么能通过import xx from xxx即可实现加载打包后的js。通过查找资料,发现是通过package.json中有个main属性来设置加载js的路径。如图:
4、加载问题解决了,剩下就是打包问题了。由于打包需要一些webpack的配置,所以直接用vue-cli初始化了一个工程,对其中的webpack进行调整。主要是去掉build中打包配置文件webpack.prod.conf.js,这里去掉HtmlWebpackPlugin等。
https://github.com/myGitZone/mapModule 这里是示例,该项目只是一个demo。
如果有什么问题,欢迎指出。可以留言,或者在github上提出来。
相关文章推荐
- 自定义vue组件发布到npm的方法
- npm发布自己的vue插件/组件包
- vue组件发布到npm简单步骤
- vue todo-list组件发布到npm上的方法
- 发布自己第一个npm 组件包(基于Vue的文字跑马灯组件)
- Vue组件库发布到npm详解
- 手把手教你封装 Vue 组件并使用 NPM 发布
- Vue 组件封装 并使用 NPM 发布的教程
- VUX v2.1.1-rc.12 发布,基于 WeUI 的 Vue 移动端组件库
- 发布自己的module - 我的第一个npm组件!
- vue自定义日期组件
- vue.js2.0 自定义组件初体验
- vue学习--自定义全局vue组件
- [IMWeb训练营作业]vue实现自定义select下拉框组件
- vue 自定义组件
- 三步搞定自定义Vue全局组件
- vue.js2.0 自定义组件初体验
- 浅谈Vue.js 组件中的v-on绑定自定义事件理解
- Vue.use自定义自己的全局组件
- vue组件,可以通过npm引用的组件