Node開發

lin_fightin發表於2020-09-27

node是什麼
在這裡插入圖片描述
node是一個程式碼執行環境,也能夠執行JS程式碼。
JS的三要素是ECMAscript,DOM,BOM,而node.js是ECMAscript,Node,API。
怎麼使用Node.js
首先在使用的檔案中,按住shift鍵+滑鼠右鍵,出現一個‘在此處開啟Powershell串列埠’,點選後即可開啟
如建立一個node.js檔案
在這裡插入圖片描述

然後該檔案的目錄位置開啟powershell視窗,如圖在這裡插入圖片描述
node.js被呼叫了。
全域性物件
在瀏覽器中,全域性物件是window
而在node中,全域性物件是global.所以,log,setTimeour這些方法都可以用
如圖 在這裡插入圖片描述
模組劃開發
在這裡插入圖片描述
一個js檔案就是一個模組,可以用exports對其成員匯出,然後用require匯入其他模組
如圖在這裡插入圖片描述
其次,還可以用module.exports方法進行匯出,當一個檔案裡面又有exports和module.exports時,以後者為準。在這裡插入圖片描述在這裡插入圖片描述
上圖時a.js,下圖是b.js
在這裡插入圖片描述
呼叫節
呼叫後結果以module.erports為準。
在這裡插入圖片描述

在這裡插入圖片描述
當module.erports不是重新賦值而是直接加進去後,結果如圖以物件形式疊在一起呈現。
系統模組API
檔案操作
有讀和寫,readFile,writeFile,
1 首先引入fs模組,在這裡插入圖片描述
如圖,在readFile中,err值,如果讀取正常,裡面的值應該是null,而dos則是global裡面的內容
如圖
在這裡插入圖片描述
在writeFile中,在這裡插入圖片描述
也成功寫入了content。
path路徑
在window中,/\都可,而在linux中,時使用/,所以為了防止,匯入Path,
在這裡插入圖片描述
path.join可以拼接,

如圖,__dirname可以獲取絕對路徑,在join中,用__dirname+檔名的join獲取絕對路徑。結果如圖
在這裡插入圖片描述
第三方模組
1 以Js檔案存在
2 命令列工具形式存在
用npm install XXX來下載模組,一般命令列工具後面要加-g,而庫檔案則不用加,屬於本地安裝。
1用nodemon代替node,優勢就是,Node每次呼叫一次後,就會結束,如果你修改檔案的內容,你得重新呼叫一次,而用nodemon,呼叫完必須用ctrl+c來結束,而且檔案修改後會實時的更新。
2 nrm模組
nrm可以切換npm下載地址,nrm ls檢視,nrm use XXX 轉換
gulp模組
在這裡插入圖片描述
在這裡插入圖片描述
1gulp.src()獲取檔案
2 gulp.dest()輸出檔案
3 gulp.task()任務
4 gulp.watch()監控
在這裡插入圖片描述
在這裡插入圖片描述
呼叫因為是gulp模組,故如圖在這裡插入圖片描述
以gulp開頭,呼叫任務。
gulp外掛
1 gulp.htmlmin 壓縮html檔案
2 gulp.csso 壓縮csso檔案
3 gulp-babel ES6轉換
4 gulp-file-include 公共檔案包含
5 gulp-less less檔案裝換
6gulp-uglify 壓縮js
在這裡插入圖片描述

在這裡插入圖片描述
接著,在各個html中引入頭部模組在這裡插入圖片描述
在這裡插入圖片描述
壓縮後的html
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
這些方式有一個弊端,就是需要一個一個執行,而

這樣就可以一次性呼叫所有任務。

package.json檔案
用npm init -y就可生成package.json檔案。下圖是檔案裡包含的內容
在這裡插入圖片描述
用npm install xxx --save-dev生成的模組會被加入到專案依賴
用 npm install生成的模組加入到開發依賴
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
模組載入機制在這裡插入圖片描述

在這裡插入圖片描述
兩者的區別是加了字首後,會在當前目錄下去尋找同名資料夾,而沒加字首,則必須在node_modules這個資料夾裡面找。

相關文章