摘要:概述本篇文章承接上文,記錄的是如何發(fā)布自己的模塊編寫模塊新建項(xiàng)目并初始化編寫模塊代碼發(fā)布模塊測(cè)試模塊命名空間每個(gè)人都可以發(fā)布自己的包,難免會(huì)有包名相同的情況,如果想要使
0x001 概述
本篇文章承接上文,記錄的是如何發(fā)布自己的Node.js模塊
0x002 編寫模塊新建項(xiàng)目并初始化
$ mkdir 0x005-publish-own-module $ cd 0x005-publish-own-module $ npm init This utility will walk you through creating a package.json file. It only covers the most common items, and tries to guess sensible defaults. See `npm help json` for definitive documentation on these fields and exactly what they do. Use `npm install` afterwards to install a package and save it as a dependency in the package.json file. Press ^C at any time to quit. package name: (0x005-publish-own-module) version: (1.0.0) description: entry point: (index.js) test command: git repository: keywords: author: license: (ISC) About to write to /MY_PROJECT/PROJECT_OWN/NodeJS/npm/0x005-publish-own-module/package.json: { "name": "0x005-publish-own-module", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo "Error: no test specified" && exit 1" }, "author": "", "license": "ISC" } Is this ok? (yes)
編寫模塊代碼
$ vim index.js // index.js exports.printMsg = function() { console.log("This is a message from the demo package"); }
發(fā)布模塊
$ npm publish --access=public + [email protected]
測(cè)試模塊
$ mkdir 0x006-use-own-package $ cd 0x006-use-own-package $ npm install [email protected] npm notice created a lockfile as package-lock.json. You should commit this file. npm WARN [email protected] No description npm WARN [email protected] No repository field. + [email protected] $ vim index.js // index.js var myModule = require("0x005-publish-own-module"); console.log(myModule); myModule.printMsg(); $ node index.js { printMsg: [Function] } This is a message from the demo package0x003 命名空間
每個(gè)人都可以發(fā)布自己的包,難免會(huì)有包名相同的情況,如果想要使用一個(gè)已經(jīng)存在的包的包名,可以使用命名空間
將package.json中的包名該為@scope/package_name就行,比如@followwinter/lodash
其中,scope為當(dāng)前登錄的用戶名,package_name便是包名,則在安裝、更新、移除、require包的時(shí)候都必須該為這種格式
項(xiàng)目的初始化版本號(hào)為1.0.0,當(dāng)然也可以自行修改,也可以不遵守以下規(guī)范
主版本號(hào):版本更新,具有顛覆式的改變或者架構(gòu)的改變
次版本號(hào):新功能更新
bug修復(fù)版本號(hào):bug修復(fù)
0x005 tag使用為一個(gè)版本添加一個(gè)tag
npm dist-tag add
發(fā)布一個(gè)有tag的版本
npm publish --tag beta --access=public
安裝
npm install 0x005-publish-own-module@beta
0x006 總結(jié)
npm publish [[--tag beta] [--access public]]
發(fā)布一個(gè)包
如果access=public,則這個(gè)包為公共的,所有人都可以通過npm安裝這個(gè)包
如果攜帶了tag參數(shù),則可以通過npm install
npm dist-tag add
項(xiàng)目github
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/88495.html
摘要:引用并執(zhí)行如果安裝出錯(cuò),比如寫錯(cuò)了包名,將會(huì)發(fā)生以下事情命令行報(bào)錯(cuò)使用可以自己新建一個(gè)文件編寫也可以直接使用來初始化一個(gè)該命令是一個(gè)交互式命令,可以根據(jù)提示輸入相應(yīng)信息生成相應(yīng)的,命令提示后面的中為提示內(nèi)容,可以選擇一路,然后再去修改。 0x001 概述 npm是一個(gè)包管理工具,本文章基本算是對(duì)官方文檔的解讀、翻譯和實(shí)操筆記,順便說明使用npm中的坑。 0x002 安裝Node.js ...
摘要:概述本篇文章承接上文,記錄的和版本在包管理方面的異同,基于閱讀官方原文整理簡(jiǎn)化。此時(shí)的文件夾如下所示包的復(fù)制和取消復(fù)制假設(shè)我們有一個(gè)項(xiàng)目依賴添加依賴依賴,此時(shí)添加依賴依賴,此時(shí)升級(jí)依賴依賴,此時(shí)升級(jí)依賴依賴,此時(shí)執(zhí)行查看文件夾資源項(xiàng)目 0x000 概述 本篇文章承接上文,記錄的v2和v3版本在包管理方面的異同,基于閱讀官方原文整理簡(jiǎn)化。 0x001 v2管理方式 假設(shè)有模塊A、B、C,...
摘要:如何選擇就如果上面所有,需要打包進(jìn)生產(chǎn)環(huán)境就保存到,只是在開發(fā)或者打包的時(shí)候使用的就保存到即可。提示不能發(fā)布當(dāng)前版本解決方案不能發(fā)布已經(jīng)發(fā)布的版本,修改一下版本號(hào)就可以了想不到了,想到了再寫資源項(xiàng)目 0x001 概述 本篇文章承接上文,記錄的是一些使用過程中的疑惑 0x001 墻的原因使得包下載太慢 解決方案:使用淘寶cnpm,推薦使用cnpm,因?yàn)槿绻薷膎pm倉(cāng)庫(kù),將會(huì)導(dǎo)致無法發(fā)布...
摘要:概述本篇文章承接上文,記錄的的配置和命令的詳細(xì)說明。的配置說明項(xiàng)目名稱,的時(shí)候就是使用這個(gè)。案例說明版本號(hào),符合的版本規(guī)范的版本號(hào),默認(rèn)從開始。 0x000 概述 本篇文章承接上文,記錄的package.json的配置和npm命令的詳細(xì)說明。 0x001 package.json的配置 name: 說明:項(xiàng)目名稱,npm install的時(shí)候就是使用這個(gè)name。 案例:loda...
摘要:概述上一章已經(jīng)實(shí)現(xiàn)了最簡(jiǎn)單的配置文件使用和監(jiān)聽功能,這一章要開始實(shí)現(xiàn)自動(dòng)刷新。只能在終端中使用的在章節(jié)中指令后標(biāo)有可以使用的功能,快速調(diào)用終端最終項(xiàng)目文件夾結(jié)構(gòu)資源源代碼 0x001 概述 上一章已經(jīng)實(shí)現(xiàn)了最簡(jiǎn)單的webpack配置文件使用和webpack監(jiān)聽功能,這一章要開始實(shí)現(xiàn)自動(dòng)刷新。 0x002 瀏覽器自動(dòng)刷新 創(chuàng)建新的項(xiàng)目框架 - webpack_study + ...
閱讀 5366·2021-10-15 09:42
閱讀 1642·2021-09-22 16:05
閱讀 3308·2021-09-22 15:57
閱讀 3456·2019-12-27 12:06
閱讀 996·2019-08-29 15:16
閱讀 2911·2019-08-26 12:24
閱讀 414·2019-08-26 12:02
閱讀 1918·2019-08-23 16:00