nodejs中標準包的製作,上傳,安裝及卸載方法

來源:互聯網
上載者:User

標籤:檔案夾   asc   bin   lis   正常化   打包   javascrip   開啟   epo   

 一:如何製作一個標準包?

為了正常化,基本遵循CommonJS規範,首先約定:

包的使用:

  • 所有模組放在一個檔案夾(包名)
  • 包放在當前項目中的node_modules檔案夾下
  • 包中定義一個index.js(檔案名稱不可以更改)匯出所有模組(出口)
  • 引用包(約定大於配置)

Node.js在調用包時,首先會檢查包中的package.json檔案的main欄位,將其作為包的介面模組,如果package.json檔案的main欄位不存在,那麼Node.js會嘗試尋找index.js或index.node作為包的介面。

以下是一個非常簡單的標準包的參照:

 

 

標準包的結構:

名稱 |功能 |---|---| package.js |包描述檔案 bin |存放可執行檔 lib |存放JavaScript代碼 doc |存放文檔 test |存放單元測試用例代碼 README.md |說明文檔,描述包的作用和用法

 

如何打包產生package.json檔案?

我們以下面這個還未打包的package為例:

 

 

步驟: 1.自己建立README.md說明檔案,注意修改尾碼名

     2.在根目錄package下執行命令視窗

npm init -y  //自動建立package.json

 

當然如果想要自己手動建立就不要加 -y輸入 npm init即可

   name:(package)    //包名:(括弧內為預設值下同) 斷行符號

   version:(1.0.0)       //版本

   git repository:        //模組的git倉庫,選填。npm的使用者一般都使用github做為自己的git       倉庫

   author:              //模組的作者名

   License:(ISC)             //許可證 預設括弧中的

 

IS this ok?(yes)         //輸入yes即可產生

     

二:如何發布一個包?

1)發布一個包的步驟:

當我們建立完了一個包我們便會將其上傳到npm的官網上去,以供其他人來使用

 第一步:在npm官網 https://www.npmjs.com/上註冊一個帳號

 第二步:登入

在包的根目錄下面執行開啟dos視窗(我這裡的需要上傳的包為math檔案夾)(找到這個檔案夾所在位置,按住shift右擊, 點擊”在此處開啟命令視窗”)

 

 

npm adduser        //斷行符號後,彈出Username:  

Username:          //輸入你在官網註冊時的使用者名稱,斷行符號

Password:          //輸入官網註冊的密碼,密碼看不見,請確保你輸的密碼正確, 斷行符號

Email:(this is Public)    //輸入官網註冊時綁定的郵箱,斷行符號

第三步:上傳

npm publish        //此處上傳命令,斷行符號

 

上傳成功如:

   

 

 

 

 

2)發布一個包的時候容易遇到的問題:

  • 1.切換的源不對,很可能你現在的源是taobao等其他來源
  • 報錯資訊會中含有:
  • only admin can publish this module

解決辦法:修改源 npm config set registry http://registry.npmjs.org

 

查看是否切換源成功: npm config list

當跳出的資訊中含有registry = "http://registry.npmjs.org/"表示切換源成功

 

2.你的包名與npm官網上別人上傳的包重名了,會報以下錯誤

 

 

解決辦法有兩種:

 

 

1.修改你包中的package.json檔案中的name(即包的名字)

2.修改你包的版本名

 

三:安裝包

在建立的檔案的根目錄下執行

npm install 需要的包名  //安裝包

 

npm uninstall 需要刪除的包名  //卸載包

 

在建立的檔案下的根目錄執行

 npm install 包名 --save  // 建立包依賴

 

nodejs中標準包的製作,上傳,安裝及卸載方法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.