標籤:檔案夾 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中標準包的製作,上傳,安裝及卸載方法