gpt4 book ai didi

javascript - 导入不适用于 Node.js 版本 11.8.0

转载 作者:行者123 更新时间:2023-12-01 08:45:47 25 4
gpt4 key购买 nike

我正在编写一个简单的程序,它使用一个充满字典单词的对象。我想从另一个文件中导入该对象,因为它非常大。尝试导入它时,我收到一个错误,看起来 Node.js 不知道它是什么。

我已经尝试重新安装最新版本的 Node.js。

这是重要的代码:

import {dict} from './words_dictionary'

这就是全部:
import {dict} from './words_dictionary'


function exists(obj,str) {
if(obj[str]) {
return true
} else {
return false
}
}
console.log(exists(dict, 'hello'))

这是字典代码的要点:
export let dict = {a: 1, aa: 1, aaa: 1, aah: 1, aahed: 1, aahing: 1, aahs:
1, aal: 1, aalii: 1, aaliis: 1, aals: 1, aam: 1, aani: 1, aardvark: 1,
aardvarks: 1,...~3000 more}

我希望是真的,但我得到了这个错误:
SyntaxError: Unexpected token {
at new Script (vm.js:84:7)
at createScript (vm.js:264:10)
at Object.runInThisContext (vm.js:312:10)
at Module._compile (internal/modules/cjs/loader.js:696:28)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:747:10)
at Module.load (internal/modules/cjs/loader.js:628:32)
at tryModuleLoad (internal/modules/cjs/loader.js:568:12)
at Function.Module._load (internal/modules/cjs/loader.js:560:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:801:12)
at executeUserCode (internal/bootstrap/node.js:526:15)

ECMAScript 6 现在正在运行,但我现在收到未定义 dict 的错误。这是否与文件大小有关,因为我已经多次检查拼写错误?

最佳答案

你能用import吗?代码中其他地方的键盘?这里的问题可能是您没有将代码转换为 ECMAScript 5。因为 import是一个 ECMAScript 6 功能,它还没有被 Node.js 完全支持。如果你使用像 Babel 这样的工具来编译你的代码,你可以解决这个问题。如果您不想这样做,请尝试使用 require反而。

如前所述,在 Node.js 9+ 中,您还可以在带有 --experimental-modules 的 .mjs 文件中使用它。启用标志。

node --experimental-modules file.mjs

Node.js import compatibility

关于javascript - 导入不适用于 Node.js 版本 11.8.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54384073/

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