核心模塊
核心模塊的意義
- 如果只是在服務器運行JavaScript代碼,意義並不大,因為無法實現任何功能(讀寫文件,訪問網絡)。
- Node 的用處在於它本身還提供的一系列功能模塊,用於與操作系統互動。
- 這些核心的功能模塊在 Node 中內置。
內置如下模塊:
- path:處理文件路徑。
- fs:操作文件系統。
- child_process:新建子進程。
- util:提供一系列實用小工具。
- http:提供HTTP服務器功能。
- url:用於解析URL。
- querystring:解析URL中的查詢字符串。
- crypto:提供加密和解密功能。
- 其他
Node Package
由於Node是一套輕內核的平台,雖然提供了一系列的內置模塊,但是不足以滿足開發者的需求,於是乎出現了包(Package)的概念。與核心模塊類似,就是將一些預先設計好的功能或者說API封裝到一個文件夾,提供給開發者使用;
包的加載機制
- 與內置模塊相同,包的加載同樣使用
require
方法
const express = require('express');
- 加載機制也和內置模塊加載機制相同
- 加載注意事項:
- 先在系統核心(優先級最高)的模塊中找;
const fs = require('fs');
// 永遠加載內部核心模塊fs
- 然后再到當前項目中 node_modules 目錄中找;
如何管理好自己的包包
- 由於
Node
本身並沒有太多的功能性API
,所以市面上涌現出大量的第三方人員開發出來的Package
- 包的生態圈一旦繁榮起來,就必須有工具去代替人腦或者文檔的方式管理
- 這時候
NPM
誕生了
NPM
-
隨着時間的發展,NPM 出現了兩層概念:
- 一層含義是 Node 的開放式模塊登記和管理系統,亦可以說是一個生態圈,一個社區
- 另一層含義是 Node 默認的模塊管理器,是一個命令行下的軟件,用來安裝和管理 Node 模塊。
-
官方鏈接: https://www.npmjs.com/
-
國內加速鏡像: https://npm.taobao.org/
安裝NPM
- NPM 不需要單獨安裝。默認在安裝 Node 的時候,會連帶一起安裝 NPM。
- 但是,Node 附帶的 NPM 可能不是最新版本,最好用下面的命令,更新到最新版本。
$ npm install npm -g
- 默認安裝到當前系統 Node 所在目錄下。
- 由於之前使用 NVM 的方式安裝的 Node 所以需要重新配置 NPM 的全局目錄
配置NPM的全局目錄
$ npm config set prefix [pathtonpm]
- 將NPM目錄配置到其他目錄時,必須將該目錄放到環境變量中,否則無法再全局使用
常用NPM命令
npm config [ls|list|set|get] [name] [value]
npm init [--yes|-y]
npm search [name]
npm info [name]
npm install [--global|-g] [name]
npm uninstall [--global|-g] [name]
npm list [--global|-g]
npm outdated [--global|-g]
npm update [--global|-g] [name]
npm run [task]
npm cache [clean]