首頁 > web前端 > js教程 > Node.js 如何發展對 ES6 模組的支援?

Node.js 如何發展對 ES6 模組的支援?

Mary-Kate Olsen
發布: 2024-11-07 21:08:03
原創
279 人瀏覽過

How has Node.js evolved its support for ES6 Modules?

Node.js 計畫支援ES6 模組:深入了解

Node.js JavaScript 執行時間環境長期以來一直支援CommonJS 模組用於載入外部代碼。然而,隨著 ES6 (ECMAScript 2015) 的出現,原生模組支援的引入引發了一個問題:Node.js 會接受導入/導出模組嗎?

Node.js 13.2.0 及以後

從 Node.js 13.2.0 開始,引入了對 ES 模組的支持,而無需實驗性標誌。啟用 ECMAScript 模組 (ESM) 支援涉及將 package.json 檔案設定為:

{
  "type": "module"
}
登入後複製

所有帶有 .js、.mjs 或沒有副檔名的檔案將被視為 ESM。啟用 ES 模組的替代方法也可用,並記錄在發行說明中。

Node.js 13.1.0 及更早版本

對於較舊的Node.js 版本,[esm](https://github.com/standard -things/esm) 模組載入器提供了ES 的生產就緒實作模組:

node -r esm main.js
登入後複製

歷史發展時間表

2019年4月23日

ECMAScript檢測機制更新模組被集成,引入了package.type 的選項(模組或commonjs)以及新的選項指定入口點類型和模組說明符分辨率。

2019 年1 月17 日

Node.js 11.6.0 包含ES 模組作為實驗性功能,使用以下標誌啟用:

node --experimental-modules index.mjs
登入後複製
登入後複製

計劃在v10.0 LTS 中刪除此標誌發布。

2017 年9 月13 日

Node.js 8.5.0 新增了對.mjs 檔案的支持,可在標誌後面存取:

node --experimental-modules index.mjs
登入後複製
登入後複製

初衷是在v10.0 LTS 中刪除此標誌發布。

2017 年 9 月 8 日

對 ESM 模組的初始支援已新增至 Node.js 主分支,可透過 --experimental-modules 標誌存取。

二月2017

Node.js 團隊宣布決定使用 .mjs 檔案副檔名作為破壞性最小的解決方案,讓 CommonJS 和 ES 模組共存。預計實施至少需要一年時間。

2016 年 10 月

TC-39 會議後,一位 Node.js 開發人員概述了實作 ES 模組的挑戰。關鍵問題包括靜態與動態分析、猴子修補和模組檢測。使用 *.mjs 擴充功能成為一種可能的解決方案。

2016 年之前

關於 Node.js 中 ES 模組支持的爭論已經持續了很長時間相當長的時期。各種提案和討論旨在解決 Node.js 和 HTML 的不同要求,同時適應新規範。

以上是Node.js 如何發展對 ES6 模組的支援?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板