最近写了一个基础的Vue UI框架, 非常适合学习Vue基本知识,组件及Vue组件之间通信(涉及eventBus、$emit、$on、props、provide、inject)等,附上连接vue-wheel,有兴趣的小伙伴可以看一下。
vue包的编写
正常书写Vue文件就可以了,无论是使用Vue-cli还是不用框架编写组件,需要遵循以下步骤操作一下:
1.看一下有没有package.json,如果没有就npm init生成package.json
2.除了写Vue组件外,另外需要写一个组件导出文件-index.js,文件名随便取,要配置好npm run build的入口文件和出口文件

index.js

package.json
"name": "wheel-lsy",
"version": "0.1.0",
"description": "这是一框架",
"main": "dist/index.js",
"scripts": {
"start": "parcel index.html --no-cache",
"build": "parcel build index.js --no-cache",
"dev-test": "parcel watch test/* --no-cache & karma start",
"test": "parcel build test/* --no-cache --no-minify && karma start --single-run",
"docs:dev": "vuepress dev docs",
"docs:build": "vuepress build docs"
},
我用的时parcel构建的,如果你用的webpack,请参考这篇文章小义博客
3.进行npm run build进行构建,生成编译后的文件

build后
4.修改
package.json里的name、version、main
-
name: npm包的名字-不要和现有npm包重名 -
version: 发布的版本-每次发布都要修改版本 -
main: 别人install后,引用时的入口文件-要指定build后的输出位置,例如我的就是dist/index.js

package.json
"name": "wheel-lsy",
"version": "0.1.0",
"description": "这是一框架",
"main": "dist/index.js",
5.根目录下增加.npmignore文件-因为不是所有文件都要上传到npm-npm也有内置白名单和黑名单
.*
/node_modules
/src
package-lock.json
默认忽略:
.*.swp
._*
.DS_Store
.git
.hg
.npmrc
.lock-wscript
.svn
.wafpickle-*
config.gypi
CVS
npm-debug.log
node_modules/
默认包含,即使设置也无效
package.json
README (and its variants)
CHANGELOG (and its variants)
LICENSE / LICENCE
6.如果没有npm账号,需要注册一下npmjs,有账号请看下一步
7.检查npm源-我们国内一般使用taobao镜像源,需要切换为npm源,推荐非常好用npm切换源的工具,安装及使用方法请看我的另一篇文章npm快速切换源

npm源
8.
npm publish-第一次需要输入用户名和密码
完成上述步骤,别人就可以使用你的npm包了。npm install <name>