中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

Node.js的npm包管理器基礎使用教程
來源:易賢網 閱讀:1016 次 日期:2016-06-20 16:32:33
溫馨提示:易賢網小編為您整理了“Node.js的npm包管理器基礎使用教程”,方便廣大網友查閱!

特別是JavaScript領域中,基于NPM的網絡傳輸方式真的是越來越流行,包括React與Vue等許多JavaScript庫與框架都選擇使用npm進行管理,這里就為大家送上Node.js的npm包管理器基礎使用教程,需要的朋友可以參考下

配置

npm set

npm set init-author-name 'Your name'

npm set init-author-email 'Your email'

npm set init-author-url 'http://yourdomain.com'

npm set init-license 'MIT'

上面命令等于為npm init設置了默認值,以后執行npm init的時候,package.json的作者姓名、郵件、主頁、許可證字段就會自動寫入預設的值。這些信息會存放在用戶主目錄的~/.npmrc文件,使得用戶不用每個項目都輸入。

如果某個項目有不同的設置,可以針對該項目運行npm config。

1.

npm set save-exact true

上面命令設置加入模塊時,package.json將記錄模塊的確切版本,而不是一個可選的版本范圍。

2.

npm config get prefix

3.

npm config set prefix /usr/local

npm使用

安裝:

npm install grunt-cli

安裝之前,npm install會先檢查,node_modules目錄之中是否已經存在指定模塊。如果存在,就不再重新安裝了,即使遠程倉庫已經有了一個新版本,也是如此。

如果你希望,一個模塊不管是否安裝過,npm 都要強制重新安裝,可以使用-f或--force參數。

本地安裝: package會被下載到當前所在目錄,也只能在當前目錄下使用。安裝結束后,當前目錄下回多出一個node_modules目錄,grunt-cli就安裝在里面。

npm install -g grunt-cli

全局安裝:package會被下載到到特定的系統目錄下,安裝的package能夠在所有目錄下使用。現在變成了/usr/local/lib/node_modules/grunt-cli,/usr/local/lib/node_modules/也就是之前所說的全局安裝目錄啦。

1.安裝當前目錄package.json文件中配置的devDependencies模塊

npm install

2.安裝本地的模塊文件

npm install ./package.tgz

3.安裝指定URL的模塊

npm install https://github.com/indexzero/forever/tarball/v0.5.6

4.安裝本地文件系統中指定的目錄包含的模塊

npm install <folder>

5.安裝并更新package.json中的版本配置

npm install <name> [–save|–save-dev|–save-optional]

(1)添加–save 參數安裝的模塊的名字及其版本信息會出現在package.json的dependencies選項中

(2)添加–save-dev 參數安裝的模塊的名字及其版本信息會出現在package.json的devDependencies選項中

(3)添加–save-optional 參數安裝的模塊的名字及其版本信息會出現在package.json的optionalDependencies選項中

6.安裝模塊的指定版本

npm install <name>@<version>

Example:

npm install underscore@1.5.2

7.安裝模塊指定版本號范圍內的某一個版本

npm install <name>@<version range>

Example:

npm install async@”>=0.2.0 <0.2.9″

–force強制拉取遠程資源,即使本地已經安裝這個模塊

Example:

npm install underscore –force

8.-g或–global全局安裝模塊,如果沒有這個參數,會安裝在當前目錄的node_modules子目錄下

Example:

npm install -g express

如果你希望,所有模塊都要強制重新安裝,那就刪除node_modules目錄,重新執行npm install。

$ rm -rf node_modules

$ npm install

更新

npm update [-g] [<name> [<name> … ]

更新指定name列表中的模塊。-g參數更新全局安裝的模塊。

如果沒有指定name,且不是在某個模塊內,會更新當前目錄依賴的所有包都會被更新(包括全局和模塊內);如果當前目錄在某個模塊目錄內,會更新該模塊依賴的模塊,所以不指定name直接運行npm update時,最好在某個模塊內運行,以免更新到其他不想更新的模塊。

卸載

npm uninstall package

查看

查看安裝了那些包

npm ls --depth=0

查看特定包具體信息

npm ls grunt-cli

npm info grunt-cli

搜索

npm search grunt-cli

發布

1.package.json

package.json說明:

npm命令運行時會讀取當前目錄的 package.json 文件和解釋這個文件,這個文件基于 Packages/1.1規范。在這個文件里你可以定義你的應用名稱( name )、應用描述( description )、關鍵字( keywords )、版本號( version )、應用的配置項( config )、主頁( homepage )、作者( author )、資源倉庫地址( repository )、bug的提交地址( bugs ),授權方式( licenses )、目錄( directories )、應用入口文件( main )、命令行文件( bin )、應用依賴模塊( dependencies )、開發環境依賴模塊( devDependencies )、運行引擎( engines )和腳本( scripts )等。

對于開發者而言,開發和發布模塊都依賴于他對這個文件 package.json 所包含的意義的正確理解。我們下面用一個本文共用的例子來說明:

{

  "name": "test",

  "version": "0.1.0",

  "description": "A testing package",

  "author": "A messed author <messed@example.com>",

  "dependencies": {

    "express": "1.x.x",

    "ejs": "0.4.2",

    "redis": ">= 0.6.7"

  },

  "devDependencies": {

    "vows": "0.5.x"

  },

  "main": "index",

  "bin": {

    "test": "./bin/test.js"

  },

  "scripts": {

    "start": "node server.js",

    "test": "vows test/*.js",

    "preinstall": "./configure",

    "install": "make && make install"

  },

  "engines": {

    "node": "0.4.x"

  }

}

這個例子里我們定義了應用的入口文件( main )為 index ,當其他應用引用了我們的模塊 require('test') 時,這個 main 的值 index.js 文件被調用。腳本( scripts )使用hash 表定義了幾個不同的命令。script.start 里的定義的 node server.js 會在 npm start 時被調用,同樣的 npm test 調用時對應的 scripts.test 里定義的命令被調用。在有些 native 模塊需要編譯的話,我們可以定義預編譯和編譯的命令。

本例中還定義了應用依賴模塊( dependencies )和開發環境依賴模塊( devDependencies )。應用依賴模塊會在安裝時安裝到當前模塊的 node_modules 目錄下。開發環境依賴模塊主要時在開發環境中用到的依賴模塊,用命令 npm 的命令 install 或 link 加上參數 —dev 安裝到當前模塊的 node_modules 目錄下。

name: package的名字(由于他會成為url的一部分,所以 non-url-safe 的字母不會通過,也不允許出現"."、"_"),最好先在[](http://registry.npmjs.org/上搜下你取的名字是否已經存在)

version: package的版本,當package發生變化時,version也應該跟著一起變化,同時,你聲明的版本需要通過semver的校驗(semver可自行谷歌)

dependencies: package的應用依賴模塊,即別人要使用這個package,至少需要安裝哪些東東。應用依賴模塊會安裝到當前模塊的node_modules目錄下。

devDependencies:package的開發依賴模塊,插件發布的時候自動刪除不相關代碼。用個文件記錄一下當前項目中安裝或者需要的插件,即別人要在這個package上進行開發,可以一鍵安裝項目所需插件。

2.版本號

大家也注意到 package.json 里的版本號有些是 >= 0.6.7 有些是 1.x.x,這有什么區別?npm 使用于語義化的版本識別來進行版本管理。并不是所有的模塊都會提供向后兼容性,有時候某些模塊因為某些原因導致不向后兼容。所以我們需要定義一些規則來保證模塊能夠在某些特定的版本中可用,并且保證能用最新的版本,因為那些版本總是修改了一些 bug 或提升了性能等。我們來看一下版本定義的字段:

例子:0.4.2

+ 大版本(0)

+ 小版本(4)

+ 補丁版本(2)

一個軟件發布的時候,默認就是 1.0.0 版。如果以后發布補丁,就增加最后一位數字,比如1.0.1;如果增加新功能,且不影響原有的功能,就增加中間的數字(即小版本號),比如1.1.0;如果引入的變化,破壞了向后兼容性,就增加第一位數字(即大版本號),比如2.0.0。

在上面 package.json 的定義里我們確信模塊在所有的 Nodejs 0.4及以上和0.5以下版本里都能運行。依賴模塊 redis 在所有大于或等于0.6.7的版本上都能運行,依賴模塊 ejs 只能確保運行在0.4.2版本里,依賴模塊 express 確保能夠兼容大于或等于1.0.0并且小于2.0.0。

生成

npm init

用來初始化生成一個新的package.json文件。它會向用戶提問一系列問題,如果你覺得不用修改默認配置,一路回車就可以了。

如果使用了-f(代表force)、-y(代表yes),則跳過提問階段,直接生成一個新的package.json文件。

更多信息請查看網絡編程
易賢網手機網站地址:Node.js的npm包管理器基礎使用教程
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
一本色道久久综合亚洲精品婷婷| 又紧又大又爽精品一区二区| 亚洲自拍高清| 亚洲一区在线观看免费观看电影高清| 999亚洲国产精| 亚洲欧美日韩精品综合在线观看| 亚洲一区二区网站| 久久久免费av| 亚洲三级影片| 欧美区日韩区| 在线看一区二区| 久久精品伊人| 欧美色精品天天在线观看视频 | 女生裸体视频一区二区三区| 国产精品日本精品| 亚洲精品美女久久久久| 久久婷婷av| 韩日精品视频| 久久一区二区三区av| 欧美视频在线播放| 欧美一级一区| 国产一本一道久久香蕉| 最新日韩精品| 久久精品理论片| 这里只有精品视频| 欧美高清在线一区| 亚洲人成网站999久久久综合| 久久久久久久尹人综合网亚洲| 国产九九视频一区二区三区| 亚洲一区二区成人| 国产欧美69| 久久久久这里只有精品| 激情av一区| 欧美freesex交免费视频| 亚洲精品一线二线三线无人区| 久久亚洲免费| 日韩午夜电影| 国产欧美日本| 欧美a级片网站| 亚洲一区二区三区在线观看视频| 国产精品久久久91| 久久精品一区二区三区不卡| 羞羞漫画18久久大片| 国产一区二区中文字幕免费看| 久久精品一区二区国产| 一本色道久久综合亚洲精品按摩| 欧美日韩一区二区精品| 欧美与黑人午夜性猛交久久久| 亚洲国产综合在线看不卡| 欧美国产日韩精品免费观看| 亚洲欧美一区二区三区久久| 麻豆精品在线播放| 国产精品成人一区二区三区夜夜夜 | 国内免费精品永久在线视频| 老牛影视一区二区三区| 日韩视频一区二区在线观看 | 国产欧美精品| 模特精品裸拍一区| 欧美在线国产精品| 夜夜夜精品看看| 在线日韩成人| 国产精品九九久久久久久久| 欧美激情精品久久久久| 久久精品国产亚洲a| 亚洲最快最全在线视频| 最新日韩中文字幕| 亚洲精品影视| 亚洲第一综合天堂另类专| 国产九区一区在线| 在线日韩视频| 国产精品久久久久久久一区探花| 久久久999精品| 午夜伦欧美伦电影理论片| 亚洲一区在线观看视频| 亚洲新中文字幕| 午夜国产精品影院在线观看| 欧美影院成人| 久久蜜桃精品| 免费视频一区二区三区在线观看| 美女网站久久| 欧美日韩亚洲国产精品| 国产精品久久久免费| 国产区亚洲区欧美区| 一区二区亚洲精品国产| 亚洲国产精品123| 亚洲国产毛片完整版| 亚洲毛片在线看| 欧美亚洲在线播放| 久久躁狠狠躁夜夜爽| 欧美日韩中文字幕在线| 国产日韩精品久久久| 最新亚洲一区| 欧美伊久线香蕉线新在线| 久热国产精品| 国产精品免费电影| 亚洲丶国产丶欧美一区二区三区| 亚洲美女少妇无套啪啪呻吟| 亚洲中无吗在线| 欧美精品免费视频| 韩国一区二区三区美女美女秀| 亚洲精品在线视频观看| 久久成人精品| 国产精品久久久久久妇女6080 | 亚洲狠狠婷婷| 亚洲综合欧美日韩| 老鸭窝毛片一区二区三区| 尤物视频一区二区| 亚洲专区一区| 欧美日韩福利| 亚洲人人精品| 狂野欧美一区| 激情另类综合| 久久嫩草精品久久久精品一| 国产免费观看久久| 亚洲综合色在线| 久久久久国内| 欧美日韩综合精品| 亚洲国产欧美日韩精品| 午夜精品美女久久久久av福利| 玖玖综合伊人| 国产精品成人免费| 99精品视频免费全部在线| 欧美精品一区二区三区蜜桃| 国内成人自拍视频| 亚洲伊人久久综合| 欧美三级视频| 亚洲最新在线视频| 欧美午夜片在线观看| 亚洲激情啪啪| 欧美黄色一级视频| 亚洲福利免费| 欧美激情视频一区二区三区在线播放 | 欧美视频中文一区二区三区在线观看| 国产精品人人爽人人做我的可爱| 亚洲国产精品视频| 久热爱精品视频线路一| 国产亚洲欧美日韩精品| 亚洲午夜一区二区| 欧美日韩另类字幕中文| 亚洲精品国产日韩| 免费人成精品欧美精品| 国产综合第一页| 久久网站免费| 亚洲乱码精品一二三四区日韩在线| 欧美成人激情视频免费观看| 日韩亚洲欧美一区| 国产一区二区三区久久悠悠色av | 亚洲作爱视频| 国产精品一区二区在线观看网站| 欧美国产日本高清在线| 亚洲一区二区三区免费观看| 国产婷婷色一区二区三区四区| 欧美国产日韩在线观看| 宅男噜噜噜66一区二区| 国产精品igao视频网网址不卡日韩| 亚洲乱码精品一二三四区日韩在线 | 欧美成人第一页| 亚洲一本视频| 亚洲国产精品t66y| 国产精品视频一区二区三区| 欧美亚洲一区二区在线观看| 一区二区在线看| 国产三区二区一区久久| 欧美激情精品久久久久久免费印度 | 欧美日韩精品久久| 久久精品99国产精品酒店日本| 99精品99| 亚洲国产合集| 韩国一区二区在线观看| 国产精品一区一区| 欧美精品v日韩精品v国产精品 | 久久久久久国产精品一区| 一本久久综合亚洲鲁鲁五月天| 娇妻被交换粗又大又硬视频欧美| 国产精品三上| 国产日韩欧美在线一区| 国产精品主播| 国产精品入口夜色视频大尺度 | 亚洲性线免费观看视频成熟| 亚洲国产欧美一区二区三区丁香婷| 在线观看成人av| 亚洲人成在线观看一区二区| 亚洲激情在线观看| 日韩视频―中文字幕| 99国内精品久久| 午夜视频在线观看一区| 久久漫画官网| 欧美日韩色综合| 国产日韩亚洲欧美综合| 一区二区自拍| 亚洲图片欧洲图片av| 久久精品日韩| 欧美日韩黄色一区二区| 国产精品午夜av在线| 亚洲国产午夜| 性8sex亚洲区入口| 欧美日韩三区| 亚洲区一区二区三区| 久久九九国产精品| 国产精品久久久久久模特 |