Node中node_modules文件夾及package.json文件的作用說明
node_modules文件夾及package.json文件的作用
在我們下載了npm或gulp的一些插件后,打開node_modules可以發(fā)現(xiàn),里面有很多的文件夾,會導致我們將項目拷貝給別人的時候,傳輸速度會很慢。
其實我們在拷貝給別人項目的時候,node_modules這個文件夾是不需要一起拷貝的,因為有package.json。
package.json的作用
它記錄了當前項目的信息,例如項目名稱、版本、作者、github地址、當前項目依賴了哪些第三方模塊等。
一般來說該文件都是放在項目的根目錄下,所以我們在項目根目錄下打開命令行工具,執(zhí)行npm init -y命令,生成該文件。

生成的package.json文件
name:是項目名稱version:是項目版本description:是項目的描述main:是項目的主入口文件scripts:存儲的是命令的別名keywords:允許我們用關(guān)鍵字的方式來描述當前項目author:是項目的作者license:是項目遵循的協(xié)議,默認是ISC協(xié)議dependencies:依賴的第三方模塊

文件生成之后,在項目根目錄下執(zhí)行命令行工具,輸入:npm install 命令即可,會自動去下載第三方模塊,所以不用拷貝node_modules文件夾,根據(jù)package.json文件夾可以下載第三方模塊。
node_modules是干什么的?
node_modules是安裝node后用來存放用包管理工具下載安裝的包的文件夾。比如webpack、gulp、grunt這些工具。在node.js中模塊與文件是一一對應的,也就是說一個node.js文件就是一個模塊。
modules(模塊)
在node.js中模塊與文件是一一對應的,也就是說一個node.js文件就是一個模塊,文件內(nèi)容可能是我們封裝好的一些JavaScript方法、jsON數(shù)據(jù)、編譯過的C/C++拓展等,在關(guān)于node.js的誤會提到過node.js的架構(gòu)。
其中http、fs、net等都是node.js提供的核心模塊,使用C/C++實現(xiàn),外部用JavaScript封裝。
require搜索module方式
node.js中模塊有兩種類型:核心模塊和文件模塊,核心模塊直接使用名稱獲取,比如最長用的http模塊
var http=require('http');在上面例子中我們使用了相對路徑 './test'來獲取自定義文件模塊,
node加載模塊的方法
1、核心模塊優(yōu)先級最高,直接使用名字加載,在有命名沖突的時候首先加載核心模塊,文件模塊只能按照路徑加載(可以省略默認的.js拓展名,不是的話需要顯示聲明書寫)
- 絕對路徑
- 相對路徑
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
node如何將package.json中的包降為低版本或者升級為高版本
比如現(xiàn)在你用某個包的當前版本,但是你安裝的版本高了,那么你應該這么做,首先刪除node項目中的node_modules目錄,防止安裝時的包不一致,下面給大家介紹node將package.json中的包降為低版本或者升級為高版本的方法,感興趣的朋友一起看看吧2023-11-11
node.js使用免費的阿里云ip查詢獲取ip所在地【推薦】
這篇文章主要介紹了node.js使用免費的阿里云ip查詢獲取ip所在地的相關(guān)知識,非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下2018-09-09
Node中完整的?node?addon?實現(xiàn)流程
這篇文章主要介紹了Node中完整的node?addon實現(xiàn)流程,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09
Nodejs提取網(wǎng)址參數(shù)解決“querystring”已棄用問題
無論是前端還是后端,經(jīng)常出現(xiàn)的應用場景是URL中參數(shù)的處理,下面這篇文章主要給大家介紹了關(guān)于Nodejs提取網(wǎng)址參數(shù)解決“querystring”已棄用問題的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-08-08

