npm官方文檔
- npm更新:npm install [email protected] -g
- npm權限:當你要安裝一個npm包到全局時,如果發現提示沒有權限寫入到指定路徑,那麼解決方法就是修改npm全局包安裝目錄即可:npm config set prefix ‘newpath’。具體請參見fixing-npm-permissions
- 安裝npm包到本地: npm install package_name
- 使用package.json: http://blog.csdn.net/zmrdlb/article/details/53190696
- 更新本地package: npm update。可以先運作npm outdated來看哪些包已經不是最新的。
有時候你會發現,明明用npm outdated檢視已經不是最新的包,用npm update還是更新不到。這個是因為package.json裡面包的版本号辨別,預設後是(如):^1.2.3,标明版本号version>=1.2.3 <2.0.0;那麼如果要更新的包的最新版本是2.1.1,不屬于版本範圍,自然是更新不到了。解決辦法是:将package.json裡面包的版本号設定為”(>=0.0.0),然後執行npm update,則會更新到最新版本
- 解除安裝本地package:
npm uninstall package
同時從dependencies配置中删除:npm uninstall –save package
同時從devDependencies配置中删除:npm uninstall –save-dev package
- 安裝package到全局: npm install -g package
- 更新全局package: npm update -g package
- 解除安裝全局package: npm uninstall -g package
- 建立node子產品:
- 在一個目錄裡執行npm init, 建立package.json。預設main指向index.js
- 建立index.js,寫入代碼
- 釋出包到npm
- 在其他地方npm install 剛剛釋出的包,然後require測試
- 釋出npm包
- 如果在npm registry還沒有一個使用者,則運作npm adduser 建立npm registry user
- npm login來登入
- npm publish 釋出包
注意:預設每個檔案都會被包含釋出,除非用.gitignore或.npmignore裡面配置相關檔案來忽略
如果提示403錯誤等,先修改目前所在檔案夾名和package.json裡面的name配置,這兩個命名是一樣的,比如:zmrdlb-npm-module-test(複雜點);要麼就是version得修改了。
釋出成功後,則在https://www.npmjs.com/~看到你剛剛釋出的包了
- Working with scoped packages: 暫時翻譯為-使用作用域包。scopes: 就像npm包的命名空間。如果一個包名以@開頭,那麼它就是一個scoped package。官方參考文章CLI documentation
@scope/project-name
@username/project-name
- 初始化一個scooped package
package.json中的配置會如下:
{
“name”: “@username/project-name”
}
如果使用npm init,則可以在cli中指定scope
npm init –scope=username
也可以設定npm全局配置: npm config set scope username
- 釋出scoped package
scoped package預設是私有的。為了釋出私有子產品,你需要成為一個付費的私有子產品使用者
然而,public scoped modules是免費的并不需要付費。為了釋出一個public scoped module, 設定access配置并且釋出:npm publish –access=public
- 使用一個scoped package: npm install @username/project-name –save
{
“dependencies”: {
“@username/project-name”: “^1.0.0”
}
}
var projectName = require(“@username/project-name”)
- 使用scoped private modules: https://www.npmjs.com/private-modules
- 初始化一個scooped package
- 使用dist-tags: tags是semver(就是npm包的版本号規範文法)的一個補充,組織标記包的不同版本
- add tags: npm dist-tag add <pkg>@<version> [<tag>]
- 更多文法介紹:https://docs.npmjs.com/cli/dist-tag
- publishing with tags: 預設,npm publish 會标記你的包使用latest标簽。如果使用–tag, 你能指定使用其他标簽。如:
npm publish –tag beta
表明這是一個測試版
- 安裝使用tag标記:npm install <pkg>預設安裝latest标簽标記的包。
npm install <pkg>@<tag> 安裝指定tag的包