1.什么是模塊化?
特點(好處):
為什要學習模塊化?
模塊化: 一個js檔案中可以引入另一個js檔案的資料,
這個特點是很基礎的要求,只要是編程語言都有,而2015年之前,js沒有(痛點:多個js都放在一個html檔案,而不能相互參考)!
2015年出了ES6,在語法層面就支持模塊化,但是瀏覽器不支持,所以前面學習傳統開發時,還是 多個js都放在一個html檔案,
當瀏覽器不支持,可以:
-
先用開發工具(webpack)搭建一個支持模塊化的環境
-
在這個環境中寫模塊化的代碼
-
用工具打包代碼,然后在瀏覽器中運行
node.js中的模塊化
node.js中的模塊分為3大類
1.內置模塊(由node.js官方提供,例如:fs,path,http等)
2.自定義模塊(用戶自己創建的js檔案)
3.第三方模塊(由第三方開發出來的模塊,使用前需要先下載)
加載模塊
使用 require() 方法,可以加載需要的內置模塊、用戶自定義模塊、第三方模塊進行使用
// 1.加載內置的 fs 模塊
const fs = require('fs');
// 2.加載用戶的自定義模塊
const custom = require('./custom.js');
// 3.加載第三方模塊(需要下載~)
const moment = require('momoent');
注意:使用 require() 方法加載其它模塊時,會執行被加載模塊中的代碼,
什么是模塊作用域
和函式作用域類似,在自定義模塊中定義的變數、方法等成員,只能在當前模塊內被訪問,這種模塊級別的訪問限制,叫做模塊作用域;
好處:防止了全域變數污染的問題
匯出:module.exports , exports
模塊規范
-
CommonJS 規范:nodejs中遵守的就是commonjs規范,
-
ES6 模塊化規范:(前后端通用的模塊化規范;Node.js、Vue、React 中都能使用!)
-
CMD 和 AMD 模塊化規范(較少使用): CMD--sea.js, AMD-require.js
-
UMD 叫做通用模塊定義規范(Universal Module Definition),它可以通過運行時或者編譯時讓同一個代碼模塊在使用 CommonJs、CMD 甚至是 AMD 的專案中運行,它沒有自己專有的規范,是集結了 CommonJs、CMD、AMD 的規范于一身
匯入:
-
自定義模塊:
const xxx = require(模塊檔案的相對位置) -
內置模塊:
const xxx = require(模塊的名字) -
第三方模塊:
const xxx = require(模塊的名字)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/305994.html
標籤:其他
上一篇:對于模塊化簡單介紹
下一篇:模塊化開發
