讓node支持es模塊化(export、import)的方法


  • node版本v7.9.0,支持了大部分es6的功能,但還不支持es6模塊化(export、import)。

  • 檢測ES6
    可以使用es-checker來檢測當前Node.js對ES6的支持情況。
    使用命令,全局安裝es-checker:

npm install -g es-checker

安裝好之后,執行以下命令來查看Node.js對ES6的支持情況。

es-checker

可以從輸出中查看當前版本(v7.9.0)的Node.js對ES6的支持情況。
可以看到還不支持es的模塊化。

Module
  × Module export command
  × Module import command
=========================================
Passes 38 feature Detections
Your runtime supports 90% of ECMAScript 6
=========================================
  • 讓node支持es模塊化(export、import)的方法:
  1. babel-node方式(使用babel-node命令,或webstorm配置Node interpreter直接run)
    1)使用babel-node命令
    全局安裝babel-cli,項目安裝babel-preset-es2015,新建.babelrc文件,內容如下:
{
    "presets": [
        "es2015"
    ],
    "plugins": []
}

然后,使用babel-node命令運行帶es模塊化代碼的js文件:
說明:babel-cli工具自帶一個babel-node命令,提供一個支持ES6的REPL環境。它支持Node的REPL環境的所有功能,而且可以直接運行ES6代碼。
它不用單獨安裝,而是隨babel-cli一起安裝。

babel-node import.js

2)webstorm配置Node interpreter直接run
打開webstorm,Preferences - Languages & Frameworks - Node.js and NPM - Node interpreter - Add... - Add Local - 選擇項目里安裝的node_modules/babel-cli/bin/babel-node.js - OK,現在直接run相應的js文件即可。
2. 從版本8.5.0開始,通過一個命令行選項:experimental-modules,Node.js就能支持原生的ES模塊。
需要將 Node 源碼文件后綴名改成.mjs。

node --experimental-modules main.mjs

官方文檔:https://nodejs.org/api/esm.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM