SyntaxError: Cannot use import statement outside a module import { ethers } from "ethers";
时间: 2024-08-12 10:06:11 浏览: 89
报错:Uncaught SyntaxError: Cannot use import statement outside a module 详解
这个错误信息 `SyntaxError: Cannot use import statement outside a module` 出现于JavaScript ES6模块化编程的上下文中,当你在一个非模块环境中尝试使用 `import` 关键字导入外部模块时。在现代JavaScript中,`import` 和 `export` 用于创建和导入模块,它们只在ES6模块模式下有效。
在非模块的文件(如全局脚本文件 `.js` 或者CommonJS模块文件 `.js` 或者`.cjs`),你应该使用 `require` 来导入模块。对于上述代码 `import { ethers } from "ethers";`,正确的做法是在支持ES6模块的环境中,比如在一个`index.js`这样的模块文件里,并且需要通过 `npm run build` 或类似工具将其转换为可被浏览器解析的模块格式。
纠正这个问题的方法是:
- 将包含 `import` 的代码放在一个模块文件中,通常扩展名为 `.mjs`、`.esm` 或者使用 `module.exports` 导出。
- 如果在CommonJS环境中,应使用 `const ethers = require("ethers");`。
阅读全文