将 Vue 组件库发布到 npm

制做了一套本身的组件库,并发布到npm上,项目代码见 GitHubvue

前期准备

  • 有一个npm帐号
  • 安装了vue-cli

搭建项目

vue init webpack hg-vcomponents
cd hg-vcomponents
cnpm install

目录结构

- vue-flag-list
    + build
      + dist // 存放发布到npm的代码
      - src
          - components // 存放组件源代码 和 README.md
            - arrows
                 arrows.vue
                 README.md
             - round
                round.vue
                 README.md
            index.js // 组件导出文件
        - examples // 存放组件的 demo
            arrows.vue
              round.vue
              index.vue // 组件 demo 的入口
          - router
              index.js // 引入 examples 下的组件,并配置路由
          App.vue
          main.js
      ...

内部代码详见 GitHub,若是对你有所帮助,给个star吧 。webpack

项目配置

为了使项目能上传到npm上,须要配置一些地方。git

build/webpack.base.conf.js

entry: {
    app: process.env.NODE_ENV === 'production'
      ? './src/components/index.js' // 生产模式下导入文件
      : './src/main.js' // 开发模式下导入文件
},

package.json

"private": false, // 由于组件包是公用的,因此 private 为 false
"main": "dist/hg-vcomponents.min.js", // 导出文件名,即 import 引入的文件

.gitignore

dist文件夹下文件是要导出的文件,因此在.gitignore文件中把dist/去掉,这样上传代码的时候也会更新打包后的文件。github

开发与生产

因为配置了webpack.base.conf.js,使得项目的开发与生产独立开来。
使用npm run dev进入开发环境,就能够看到组件的demo,方便调试。使用npm run build打包组件库。web

发布到npm

在你登陆了npm的状况下,在根目录输入命令行(每次更新代码执行一样操做)vue-cli

npm version patch
npm publish

大功告成!如今你能够在其余地方使用npm install hg-vconponents下载本身写的组件库了。npm

相关文章
相关标签/搜索