附件下載:發布和使用自己的NPM包.zip
NPM(node package manager) 是NodeJs官方提供的包管理工具,讓開發者可以方便地下載、安裝、升級、刪除依賴包。因為NPM默認的鏡像源(https://registry.npmjs.org) 在國外,下載會比較慢,一般會使用淘寶鏡像,有兩種使用方式:直接修改npm鏡像源、下載cnpm。推薦下載使用cnpm,保留npm默認源。通過命令npm install -g cnpm --registry=https://registry.npm.taobao.org
安裝cnpm。大部分前端開發者應該都用過npm install
命令下載依賴包,而發布命令npm publish
用的比較少,接下來將通過一個實例來詳細介紹如何發布npm包。
創建一個npm項目
- 創建一個新的文件夾并進入,本例文件夾名【yo-coder】,執行
npm init
命令初始化項目,執行命令后有一些信息要填,直接忽略,一路回車即可(后面可以修改),最后會在文件夾下生成一個package.json文件
{
"name": "yo-coder", // 項目名稱,在npm倉庫中唯一
"version": "1.0.0", // 版本號
"description": "", // 描述
"main": "index.js", // 使用import yo from \'yo-coder\'導入時,yo指向的文件
"scripts": { // 自定義命令\r\n \"test\": \"echo 這是一個測試命令\"
},
"author": "朽木", // 作者
"license": "MIT" // 一種開源協議,作者只保留版權,其他的可以為所欲為
}
- 寫一點代碼
為了演示方便,這里就簡單的創建了一個index.js文件,導出兩個方法
exports.yo = function() {
alert('Yo Coder!')
}
exports.hello = function() {
alert('Hello Coder!')
}
發布到npm
到 https://www.npmjs.com/signup 注冊npm賬號,如果有賬號了請忽略
執行命令
npm adduser
,根據提示完成登錄,登錄后會在~/.npmrc文件里保存身份令牌,可以把這個文件拷貝到項目里,其他人直接指定這個配置文件進行發布,不用登錄執行命令
npm publish
發布-
在npm網站上查看發布的包信息 https://www.npmjs.com/package/yo-coder
查看npm倉庫 -
在淘寶NPM鏡像網站上查看發布的包信息 https://npm.taobao.org/package/yo-coder
cnpm不會實時更新,目前的同步頻率為10分鐘同步一次,可以手動點擊SYNC觸發同步
查看淘寶npm倉庫
下載使用npm模塊,以vue為例
如果你已經很熟悉vue或react這些項目,忽略以下內容吧
- 執行
npm install -g vue-cli
命令安裝vue腳手架,使用vue -V
命令驗證是否安裝成功 - 執行
vue init webpack yo-coder-test
初始化vue項目,這里項目名為【yo-coder-test】,一路回車后,會自動開始下載依賴包,因為默認是從npm源下載依賴包,會比較慢,按ctrl c
取消下載,進入目錄,手動使用cnpm install
命令下載依賴包 - 執行
npm run dev
命令啟動vue項目,瀏覽器打開localhost:8080查看vue的歡迎界面 - 執行
npm install --save yo-coder
命令,執行成功后會在package.json里記錄依賴的包,方便下次直接執行npm install命令下載依賴包。install命令中的--save是運行時依賴,記錄在在dependencies下,比如antd、element-ui等;--save-dev是開發時依賴,記錄在devDependencies下,比如webpack、eslint等 -
使用yo-coder模塊,直接在App.vue里測試,效果就是一個簡單的alert
測試代碼