成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Node.js 基礎 - 包管理器 Npm 使用講解

開發 前端
包管理器又稱軟件包管理系統,它是在電腦中自動安裝、配制、卸載和升級軟件包的工具組合,在各種系統軟件和應用軟件的安裝管理中均有廣泛應用。對于我們業務開發也很受益,相同的東西不必重復去造輪子。

包管理器又稱軟件包管理系統,它是在電腦中自動安裝、配制、卸載和升級軟件包的工具組合,在各種系統軟件和應用軟件的安裝管理中均有廣泛應用。對于我們業務開發也很受益,相同的東西不必重復去造輪子。

每個工具或者開發語言都有相應的包管理器,好比 Ubuntu 的 apt-get、Centos 的 yum、Java 的 Maven 倉庫等等。Node.js 中目前最出名的包管理器為 NPM 也是生態最好的。

什么是 NPM?

NPM 是 Node.js 中的包管理器。允許我們為 Node.js 安裝各種模塊,這個包管理器為我們提供了安裝、刪除等其它命令來管理模塊。這里有一點我們需要注意,我們必須要有一個 package.json 文件或 node_modules 目錄安裝模塊到本地。

執行命令 npm i module -S/D 安裝模塊后,會在本地存儲我們所安裝的依賴項,存在于 package.json 的 dependencies/devDependencies 對象里。例如,如果一個模塊 X 使用了模塊 A 版本為 1.0,模塊 Y 使用了模塊 A 版本為 1.5,那么模塊 X 或 Y 都將在本地擁有自己對應的模塊 A 的副本。

  1. // 模塊 X 
  2.   "name""X"
  3.   "dependencies": { 
  4.     "A""^1.0" 
  5.   } 
  1. // 模塊 Y 
  2.   "name""Y"
  3.   "dependencies": { 
  4.     "A""^1.5" 
  5.   } 

什么時候需要 NPM 包?

當我們在開發一些 Node.js 項目時,可能會遇到一些地方需要 NPM,例如鏈接 Redis、MongoDB 或者發送請求 Request 等,有了這些現有模塊可以使我們更專注于業務開發,當然有時你會有些特別的需求,這時可能需要自己去封裝一個 NPM 模塊,實現模塊復用、資源共享。

NPM 安裝

NPM 不需要單獨安裝,在我們安裝 Node.js 環境時,NPM 也就安裝了,Node.js 環境還沒搭建的同學可參考 “3N 兄弟” 助您完成 Node.js 環境搭建 一節。

終端執行 npm -v 命令查看當前 npm 版本

  1. $ npm -v 
  2.  
  3. 5.6.0 

NPM 源設置

在國內有時候受限于網絡因素的影響,通常在安裝一個包管理器之前可以切換為 淘寶 NPM 鏡像,加速安裝速度,但是要注意如果是私有模塊在 NPM 官方的,則必須切換為官方源,否則會出現 404 錯誤。

查看當前 npm 源

  1. npm config get registry 
  2.  
  3. # http://registry.npmjs.org/ 

切換為 taobao 源

  1. npm config set registry=https://registry.npmmirror.com 

切換為 npm 官方源

在 npm publish 的時候 需要切換回 npm 源

  1. npm config set registry=http://registry.npmjs.org 

如果不想全局設置,執行 npm 命令時也可通過參數傳遞鏡像地址 npm i module --registry=https://registry.npmmirror.com。

淘寶 NPM 鏡像啟用新域名

注意:淘寶 NPM 鏡像已啟用新域名,由原先的 http://registry.npm.taobao.org 改為了 https://registry.npmmirror.com,目前對老的 NPM 鏡像地址做了 301 跳轉,但老的 http://npm.taobao.org 和 http://registry.npm.taobao.org 域名將于 2022 年 05 月 31 日零時起停止服務,如果使用老域名的開發者可以開始替換了。

**參考 **https://zhuanlan.zhihu.com/p/430580607

如何在項目中應用

讓我們新建一個項目 test,剛開始這是一個空的文件夾

第一步

控制臺執行 npm init,根據提示輸入信息,會生成一個 package.json 文件,如下所示:

  1.   "name""test", // 項目名稱 
  2.   "version""1.0.0", // 版本號 
  3.   "description""", // 描述 
  4.   "main""index.js", // 入口文件,默認 index.js 
  5.   "scripts": { 
  6.     "test""echo \"Error: no test specified\" && exit 1" 
  7.   }, 
  8.   "author""May", // 作者 
  9.   "license""ISC" 

第二步

安裝 npm 模塊,例如我們安裝一個 moment 模塊,執行以下命令。

  1. npm install moment -S 
  2.  
  3. or 
  4.  
  5. npm i moment --save 

安裝成功之后,會生成一個新的目錄 node_modules 這是用來存放我們所安裝的模塊,另外 package.json 也會發生變化多了一個 dependencies 對象,這個是用來存儲我們的模塊版本信息。

  1. "dependencies": { 
  2.  
  3. "moment""^2.24.0" 
  4.  

看下我們當前的目錄結構:

NPM 注冊登錄

注冊

  1. $ npm adduser 
  2. Username: your name 
  3. Password: your password 
  4. Email: (this IS public) your email 

查看當前使用的用戶

  1. npm whoami 

npm 登錄

  1. npm login 

私有模塊

如果是公司團隊或者個人項目的私有 npm 包,進行發布的時候要注意下啦,模塊的名字要以@符號開始、/符號結束,中間部分為私有包的組織名。例如,@may/logger,may 為組織的名稱,logger 為包名。

package.json

  1.   "name""@may/logger" 

發布 NPM 模塊

進入項目根目錄,輸入命令。

  1. npm publish 

常見問題

Questions1

  1. no_perms Private mode enable, only admin can publish this module: coorddistance 

這里注意的是因為國內網絡問題,許多小伙伴把 npm 的鏡像代理到淘寶或者別的地方了,這里要設置回原來的鏡像。

  1. npm config set registry=http://registry.npmjs.org 

Questions2

Unexpected end of input at 1:3637 npm ERR! egistry.npmjs.org/mkdirp/-/mkdirp-0.3.2.tgz"},"engines":{"node":"*"}

執行命令 npm cache clean --force

Questions3

Node項目部署 私有包報錯404 一般兩種情況造成:

  • 檢查服務器是否登錄npm賬號
  • 執行命令npm config get registry 檢查是否指向https,沒有指向https執行命令 npm config set registry=https://registry.npmjs.org

 

責任編輯:武曉燕 來源: Nodejs技術棧
相關推薦

2025-03-24 00:00:15

2022-09-20 11:58:27

NpmNode.js

2022-02-28 10:22:08

前端管理工具

2017-06-20 12:48:55

React Nativ自定義模塊Note.js

2024-06-28 09:18:30

2015-03-10 10:59:18

Node.js開發指南基礎介紹

2020-11-26 08:26:53

JS

2022-02-21 09:58:31

包管理器npmyarn

2012-02-10 10:03:51

Node.js

2021-07-27 10:15:57

瀏覽器NPM包Chrome web

2022-03-21 21:28:00

Homebrew包管理器Linux

2010-01-05 10:14:09

Ubuntu軟件包

2020-03-09 11:43:35

RustCargo編程語言

2020-12-03 12:06:54

HarmonyOS

2013-11-20 15:32:13

紅帽RedHatYUM包

2023-04-12 00:00:40

Node.jsMonoreponpm

2022-08-28 16:30:34

Node.jsDocker指令

2020-05-08 10:28:29

Node.js程序員JavaScript

2021-08-11 07:02:21

npm包管理器工具

2021-10-03 15:02:50

HTTPNodejs
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线91 | www.xxxx欧美| 成人av电影天堂 | av黄色在线| 久久69精品久久久久久久电影好 | 播放一级毛片 | 精品国产一区二区三区久久久蜜月 | www.日日夜夜 | 羞羞的视频在线看 | 日韩一区二区三区在线视频 | 日韩一区二区三区视频 | 人人做人人澡人人爽欧美 | 色眯眯视频在线观看 | 国产午夜精品视频 | 亚洲一区二区三区四区五区中文 | jizz视频| 精品国产一区二区三区性色av | 欧美另类视频在线 | 亚洲自拍偷拍av | 久久av一区二区三区 | 久久一二 | 亚洲 欧美 另类 综合 偷拍 | 成人精品在线观看 | 国产精品久久久久久久久久久久冷 | 日韩亚洲视频 | 国产成人麻豆免费观看 | 粉色午夜视频 | 一区二区三区四区电影视频在线观看 | 国产精品美女久久久久久久网站 | h片在线观看免费 | 欧美一级片在线 | 中文字幕第一页在线 | 国产一区久久 | 在线观看国产 | 日韩视频一区二区在线 | 成人av免费在线观看 | 中文字幕精品一区二区三区精品 | 欧美福利视频 | 亚洲高清视频在线观看 | 天天操天天玩 | 福利av在线 |