gpt4 book ai didi

javascript - Node.js - 语法错误 : Unexpected token import

转载 作者:太空宇宙 更新时间:2023-11-04 01:35:50 25 4
gpt4 key购买 nike

我不明白出了什么问题。 Node v5.6.0NPM v3.10.6

代码:

function (exports, require, module, __filename, __dirname) {
import express from 'express'
};

错误:

SyntaxError: Unexpected token import
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:387:25)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Function.Module.runMain (module.js:447:10)
at startup (node.js:140:18)
at node.js:1001:3

最佳答案

Node 13+Node 13 ,您可以使用 .mjs 扩展名,或在 package.json 中设置 {"type": "module"}。您不需要需要使用--experimental-modules标志。 Modules is now marked as stable in node.js

Node 12Node 12 ,您可以使用 .mjs 扩展名,或在 package.json 中设置 "type": "module"。并且您需要使用 --experimental-modules 标志运行 Node 。

Node 9Node 9 ,它在标志后面启用,并使用 .mjs 扩展名。

node --experimental-modules my-app.mjs
<小时/>

虽然 import 确实是 ES6 的一部分,但 不幸的是 NodeJS 默认情况下尚不支持它,并且最近才在浏览器中获得支持。

参见browser compat table on MDNthis Node issue .

来自 James M Snell 的 Update on ES6 Modules in Node.js (2017 年 2 月):

Work is in progress but it is going to take some time — We’re currently looking at around a year at least.

在原生支持 ( now marked stable in Node 13+ ) 之前, 您必须继续使用经典的 require 语句 :

const express = require("express");

如果你确实想在 NodeJS 中使用 ES6/7 新功能,你可以使用 Babel 进行编译。 Here's an example server .

关于javascript - Node.js - 语法错误 : Unexpected token import,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54650652/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com