添加 {“type”:“module”} 后,出现“SyntaxError:无法在模块外部使用 import 语句”
我试图在我的主服务器文件“App.js”中导入另一个 .js 文件,但我不断收到语法错误:
语法错误:无法在模块外部使用 import 语句
我确实在 package.json 文件中包含了“type”:“module”。
您可以在此处看到我尝试导入文件的行;
import {Read as readSensor} from './Sensor.js';
我尝试导入的函数如下所示:
export async function Read() {
const res = await fetch(SensorUrl);
if(res.ok){
return await res.json();
}
else{
throw new Error('Bad Reading');
}
}
AFAIK,我的导入/导出的语法是正确的,所以我真的无法弄清楚我做错了什么。
I'm trying to import another .js file in my main server file "App.js", but I keep getting the syntax error:
SyntaxError:Cannot use import statement outside a module
I did include the "type": "module" in my package.json file.
You can see the line where I'm trying to import the file here;
import {Read as readSensor} from './Sensor.js';
The function that I'm trying to import looks like this:
export async function Read() {
const res = await fetch(SensorUrl);
if(res.ok){
return await res.json();
}
else{
throw new Error('Bad Reading');
}
}
AFAIK, the syntax of my import/exports is correct, so I really cannot figure out what I'm doing wrong.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您使用的是节点JS V14或更高版本,请尝试以下内容:
添加
“ type”:“ module”
在您的package.json中使用
- 实验模型
在启动应用程序时,例如:node - expermentiment-modules index.js
,也可以尝试:
添加
“类型” :“模块”
在您的软件包中。如果您遇到任何问题,请随时添加注释,还请添加
package.json
文件>node版本
以进行更好的调试。看看这个 link> link ,它可能会帮助您。
If you are using node js v14 or above, try these:
add
"type": "module"
in your package.jsonuse
--experimental-modules
when launching your app, eg:node --experimental-modules index.js
Or you can try this also:
add
"type": "module"
in your package.json and rename your file with a .mjs extension, the file will look like somethingSensor.mjs
.Feel free to add a comment if you face any issue, also pls add your
package.json
file withnode version
for better debugging.Have a look at this link, it might help you.
所以,我弄清楚了,事实证明我很愚蠢。我试图用node.js(12.14.1)的过时版本运行此操作。
它一旦我更新到版本16.14.2就可以工作。
因此,今天我学到了保持我的东西更新的非常宝贵的教训。
谢谢您的答案!
So, I figured it out, and it turns out I'm dumb. I was trying to run this with an outdated version of node.js (12.14.1).
It worked as soon as I updated to version 16.14.2.
So today I have learned the very valuable lesson of keeping my stuff updated.
Thank you for the answers!