npm 私有模塊的管理使用


你可以使用 NPM 命令行工具來管理你在 NPM 倉庫的私有模塊代碼,這使得在項目中使用公共模塊變的更加方便。

開始前的工作

你需要一個 2.7.0 以上版本的 npm ,並且需要有一個可以登陸 npm 倉庫的賬號。

npm install -g npm
npm login

軟件包設置

所有的私有模塊都是 scoped package 的。

scope 是 npm 的新特性。如果一個模塊的名字以 "@" 開始,那么他就是一個scoped package。scope 就是"@"與"/"之間的部分。

@scope/project-name

當你注冊私有模塊到一個用戶下時,你的 scope 就是當前用戶的用戶名。

@username/project-name

如果要使用 npm init 初始化一個軟件包,你可以通過自定義 --scope 選項設置你的 scope

npm init --scope=<your_scope>

如果你在大多數時候使用的 scope 都是相同的,可以設置一個默認的  scope ,這樣在我們初始化的時候會自動使用該 scope 。

npm config set scope <your_scope>

發布模塊

發布一個模塊的操作是非常簡單的

npm publish

默認情況下,scoped package 會發布為私有模塊,發布為私有模塊是需要付費的,費用是每個月 $7 。更詳細的信息可參考 NPM (node package manager) 入門 - 基礎使用 

一旦完成發布,你將會在npm庫站點上看到你的 scoped package,有 private 標志,說明是非公共的模塊,他人無法使用。

授權其他成員訪問

如果你要授權給其他人使用你的模塊,你可以在 package 的權限設置頁面設置哪些用戶可以擁有 只讀或讀寫 權限。也可以通過命令行進行相關設置

npm owner add <user> <package name>

安裝私有模塊

如果要安裝私有模塊,你必須要有權限訪問到要安裝的私有模塊。安裝的時候可以使用 scope package name

npm install @scope/project-name

當你在項目中使用這些代碼模塊時可以如下使用

var project = require('@scope/project-name')

設置私有模塊為共有的

所有的 scoped packages 默認都是私有狀態的,這確保了無關人員不能訪問到該模塊。也可以修改改模塊為 public 狀態。

也可以使用命令行進行操作

npm access restricted <package_name>

這個操作可能需要幾分鍾才能生效,網站會將該模塊從私有列表中刪除。

寫在后面

關於本譯文如有任何疑問請在下面留言交流。

本文譯自 npm 官方文檔 https://docs.npmjs.com/private-modules/intro


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM