欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Node.js中如何使用ES6導入語法

Node.js中如何使用ES6導入語法,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

成都創(chuàng)新互聯(lián)-專業(yè)網站定制、快速模板網站建設、高性價比承德縣網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式承德縣網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋承德縣地區(qū)。費用合理售后完善,十年實體公司更值得信賴。

模塊是導出一個或多個值的 JavaScript 文件。導出的值可以是變量、對象或函數(shù)。

Node.js 應用由模塊組成,其模塊系統(tǒng)采用 CommonJS 規(guī)范,它并不是 JavaScript 語言規(guī)范的正式組成部分。【推薦學習:《nodejs 教程》】

在 CommonJS 中,有一個全局性方法 require(),用于加載模塊。

// 加載 path 模塊
const path = require('path')

而 ECMAScript 模塊(簡稱 ES 模塊或 ESM)是 JavaScript 語言規(guī)范中添加的一個模塊,正在尋求統(tǒng)一和標準化模塊在 JavaScript 應用程序中的加載方式。

以下導入語法由以下 ES 模塊標準組成,用于導入從不同 JavaScript 文件導出的模塊:

import XXX from 'xxx'

Node.js 不支持直接導入 ES6。嘗試在 JS 文件中編寫 import 語法:

// index.js
import { sep } from 'path'

console.log('print: ', sep)

使用 npm startnpm run dev 運行 Node.js,您將遇到以下錯誤:

Node.js中如何使用ES6導入語法

由于我們使用了 ES 模塊語法導入 path 模塊而導致程序崩潰。

而目前最快速的解決方法是,我們可以使用 Node.js 推薦的方法,在 package.json 文件中設置 "type": "module"

{
  "type": "module"
}

此解決方案適用于最新的 Node.js 版本 14.x.x 以上的版本(撰寫本文時為 15.6.0)。

Node.js中如何使用ES6導入語法

低于 Node v.14 版本的環(huán)境

另一個解決這個問題的方法是使用 Babel。它是一個 JavaScript 編譯器,允許您使用最新語法編寫 JS。它可以在任何用 JavaScript 編寫的項目中使用,因此也可以在 Node.js 項目中使用

首先從終端窗口安裝以下開發(fā)人員依賴項:

$ npm i -D @babel/core @babel/preset-env @babel/node

然后在 Node.js 項目的根目錄下創(chuàng)建一個名為 babel.config.json 的文件,并添加以下內容:

module.exports = {
  "presets": ["@babel/preset-env"]
}

@babel/node 包是一個 CLI 實用程序,它在運行 Node.js 項目之前用 Babel 預設和插件編譯 JS 代碼。這意味著它將在執(zhí)行 Node 項目之前讀取并應用 babel.config.json 中提到的任何配置。

使用 babel-node 替換該 node,以在 startdev 腳本中執(zhí)行服務器。

使用 npm run dev 腳本運行 Node 服務器的示例:

{
  "scripts": {
    "dev": "nodemon --exec babel-node server.js"
  }
}

關于Node.js中如何使用ES6導入語法問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關知識。

網站名稱:Node.js中如何使用ES6導入語法
URL標題:http://chinadenli.net/article4/gichoe.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、建站公司小程序開發(fā)、App設計企業(yè)網站制作、網站維護

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網頁設計公司