如何開發(fā)npm插件

1、創(chuàng)建package.json文件

參考npm文檔:如何創(chuàng)建 Node.js 模塊

特別注意?。?!模塊的名稱一定要在npm搜索不到的才可以,一定要起一個(gè)不重名的模塊名稱。

$ md xxx-plugin                 // 創(chuàng)建插件項(xiàng)目文件夾
$ cd xxx-plugin                 // 進(jìn)入新建項(xiàng)目目錄
$ npm init                      // 創(chuàng)建package.json文件
// 進(jìn)入配置操作
package name: (xxx-plugin)      // 插件名
version: (1.0.0)                // 插件版本
description:                    // 插件的作用描述
entry point: (index.js)         // 插件入口
test command:                   // 測試腳本
git repository:                 // git地址(可以先不填)
keywords:                       // 關(guān)鍵詞
author:                         // 作者
license: (ISC)                  // 許可證

此處入口文件(entry point)默認(rèn)設(shè)置的index.js,在xxx-plugin文件夾下新建index.js文件如下:

exports.printMsg = function() {
  console.log("This is a message from the demo package");
}

這個(gè)最簡單的模塊就完成了

2、需要一個(gè)npm賬號

打開npm官網(wǎng):https://www.npmjs.com/。按流程注冊賬號,注冊好了之后注冊郵箱會收到激活郵件,一定要激活,不然發(fā)布模塊時(shí)會報(bào)錯,提示激活郵箱。

3、npm里添加用戶

$ npm adduser  // 添加賬戶

之后按需輸入上一步注冊的賬戶名、注冊郵箱、登陸密碼。
想檢查是否添加成功,如下:

$ npm whoami // 查詢當(dāng)前賬戶

如果添加賬戶時(shí)發(fā)現(xiàn)鏡像地址不對,是淘寶或者其他地址,怎么辦?

推薦安裝nrm查看npm的鏡像源

https://www.npmjs.com/package/nrm

$ npm install -g nrm  // 安裝nrm鏡像源管理工具
$ nrm ls              // 查詢npm鏡像源,*為當(dāng)前鏡像源
$ nrm use npm         // 切換為npm原始鏡像
$ nrm -h              // 幫助文檔
$ nrm -V              // 版本

4、發(fā)布node模塊

以上都完成了,就可以在xxx-plugin目錄下發(fā)布模塊了。
再次提醒,模塊名稱必須是npm上唯一的,才能發(fā)布成功。

$ npm publish // 發(fā)布包到npm官方庫

發(fā)布成功后,在npm官網(wǎng)就能搜索到剛才自己發(fā)布的模塊了。
撤銷已發(fā)布的模塊,同名模塊發(fā)布需要24小時(shí)間隔。

5、測試新模塊

新建項(xiàng)目,安裝模塊

$ md new-project                // 創(chuàng)建項(xiàng)目文件夾
$ cd new-project                // 進(jìn)入項(xiàng)目目錄
$ npm install test-plugin       // 安裝剛發(fā)布的插件

此時(shí)new-project -> node_modules文件夾下應(yīng)該就有自己的node模塊test-plugin了。
項(xiàng)目根目錄下新建test.js文件,引入新模塊:

const plugin = require('test-plugin');
plugin.printMsg()

運(yùn)行test.js:

$ node test.js
This is a message from the demo package

得到這條message就代表模塊運(yùn)行成功啦!~

6、本地開發(fā):調(diào)試和測試

在本地開發(fā)npm模塊的時(shí)候,我們可以使用npm link命令,將npm模塊鏈接到對應(yīng)的運(yùn)行項(xiàng)目中去,方便地對模塊進(jìn)行調(diào)試和測試。推薦閱讀以下文章:
npm link的使用

7、npm開發(fā)其它常用命令

$ npm login // 發(fā)布包時(shí)登錄npm賬號用的
$ npm publish // 發(fā)布包到npm官方庫
$ npm unpublish xxx // 撤銷已發(fā)布的xxx包 
$ npm unpublish xxx --force // 強(qiáng)制撤銷xxx包
$ npm unpublish xxx@1.0.2 // 撤銷xxx包的1.0.2版本
$ npm link // 全局安裝當(dāng)前目錄的包
$ npm unlink // 全局卸載當(dāng)前目錄的包
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容