將 Vue 元件庫釋出到 npm
阿新 • • 發佈:2018-11-07
製作了一套自己的元件庫,併發布到npm
上,專案程式碼見 GitHub 。
前期準備
- 有一個
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
吧 。
專案配置
為了使專案能上傳到npm
上,需要配置一些地方。
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/
去掉,這樣上傳程式碼的時候也會更新打包後的檔案。
開發與生產
由於配置了webpack.base.conf.js
,使得專案的開發與生產獨立開來。
使用npm run dev
進入開發環境,就可以看到元件的demo
,方便除錯。使用npm run build
打包元件庫。
釋出到npm
在你登入了npm
的情況下,在根目錄輸入命令列(每次更新程式碼執行同樣操作)
npm version patch
npm publish
大功告成!現在你可以在其他地方使用npm install hg-vconponents