node相關答疑 筆記

2021-10-24 12:29:37 字數 1851 閱讀 9504

下面是我在學習node過程中的一些答疑/筆記,希望有幫助~

1、process.cwd()與__dirname區別

process.cwd() 是當前執行node命令時候的資料夾位址 ——工作目錄,保證了檔案在不同的目錄下執行時,路徑始終不變

__dirname 是被執行的js 檔案的位址 ——檔案所在目錄

nodejs官方文件上的解釋:

=> process.cwd(): the process.cwd() method returns the current working directory of thenode.js process.

意思很明了啦,就是說process.cwd()返回的是當前node.js程序執行時的工作目錄

那麼來看看__dirname的官方解釋:

=> __dirname: 當前模組的目錄名。 等同於 __filename 的 path.dirname()。__dirname 實際上不是乙個全域性變數,而是每個模組內部的。

2、package.json檔案詳細解釋

node執行js中require的時候,也會根據package.json中的依賴項查詢。

最簡單的package.json檔案,只定義兩項元資料:專案名稱和專案版本。

package.json檔案就是乙個json物件,該物件的每乙個成員就是當前專案的一項設定。

package.json檔案分為必選欄位和可選字段

<1>必選字段

①name: 專案名稱

全部小寫,沒有空格,可以使用下劃線或橫線

②version:專案版本號

x.x.x的格式,符合「語義化版本規則」

<2>可選字段

①title:標題

②author:作者

「author」: 「liuyan [email protected]」,

③homepage:專案url主頁

④repository:用於指示**存放的位置

「repository」:

⑤bugs:問題追蹤系統的url或者郵箱位址

⑥devdependencies:指定專案開發所需要的模組

⑦scripts(object)

key是生命週期事件名,value是在事件點要跑的命令。

scripts指定了執行指令碼命令,比如dev指定了執行npm run dev時,所要執行的命令

"scripts": ,
⑧dependencies

指示當前包所依賴的其他包

"scripts": ,
⑦license:授權方式

⑧main:main欄位指定了載入的入口檔案。這個欄位的預設值是模組根目錄下面的index.js

⑨config(物件):config物件中的值在scripts的整個週期中皆可用,專門用於給scripts提供配置引數

⑩bin

許多包有乙個或多個可執行檔案希望被安裝到系統路徑。在npm下要這麼做非常容易(事實上,npm就是這麼執行的)。

這需要在你的package.json中提供乙個bin欄位,它是乙個命令名和本地檔名的對映。在安裝時,如果是全域性安裝,npm將會使用符號鏈結把這些檔案鏈結到prefix/bin,如果是本地安裝,會鏈結到./node_modules/.bin/。

這個字段對應的是乙個map,每個元素對應乙個

"scripts": ,
⑪engines

engines欄位指明了該模組執行的平台,比如node 的某個版本或者瀏覽器,

既可以指定npm 版本

也可以指定npm 版本

"engines": ,

Node相關知識記錄

node以往版本檢視 gnvm version gnvm的版本 node v 當前使用的node的版本 gnvm install latest 安裝最新版本的 node gnvm install 10.0 0 安裝指定版本 gnvm install 10.0 0 x64 指定安裝32位或64位 gn...

Node 學習筆記

一.第乙個node伺服器 傳送響應資料 hello world response.end hello world n listen 8888 終端列印如下資訊 console.log server running at 二.使用express搭建第乙個伺服器 var express require ...

node學習筆記

node是什麼?官網 如何安裝?nodejs入門 一 nodejs詳細安裝步驟 如何驗證安裝成功?在cmd中輸入node v 接下來就是正文了 怎樣建立伺服器 引入http模組 建立伺服器 為伺服器物件新增請求事件 res.end ok 建立埠3000 const mongoose require ...