在node js中得到一个import语句错误



我最近开始学习node.js。我正在使用vs code,并通过url模块,得到了这个错误。

PS G:node js> node "g:node jsurlmodule.js"
(node:1964) Warning: To load an ES module, set "type": "module" in the package.json or use the .mjs extension.
(Use `node --trace-warnings ...` to show where the warning was created)
g:node jsurlmodule.js:1
import url from 'url';
^^^^^^
SyntaxError: Cannot use import statement outside a module
at Object.compileFunction (node:vm:352:18)
at wrapSafe (node:internal/modules/cjs/loader:1033:15)
at Module._compile (node:internal/modules/cjs/loader:1069:27)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)
at node:internal/main/run_main_module:17:47

代码是-

import url from 'url';
const myURL = new URL('https://example.org');
myURL.pathname = '/a/b/c';
myURL.search = '?d=e';
myURL.hash = '#fgh';
console.log(myURL)
console.log(myURL.href)

尝试设置:

"type": "module"

在你的包里。json文件。

必须包含"type"; "在包中。json文件。

看起来你没有设置支持es6导入。尝试使用commonJS导入:

如:const url = require('url');如果您想使用es6导入,请按照此操作。

相关内容

最新更新