为什么 import/export 语句不起作用?

Why is import/export statement not working?

所以我有这两个文件:

foo1

const a = 2;
export {a};

foo2

import a from "./foo1.js";
console.log(a);

两个文件都已成为模块文件 html:

    <script src='./scripts/foo2.js' type='module'></script>
    <script src='./scripts/foo1.js' type='module'></script>

脚本一运行就会抛出这个错误:

Uncaught SyntaxError: The requested module './foo2.js' does not provide an export named 'default'

您导入的方式仅适用于默认 export/import。 因此,您可以通过两种方式修复代码:

  1. 更改导入语句

import a from "./foo1.js";

(不使用默认导出)

  1. 更改导出语句

export default a;

然后在导入时你可以做任何事情,因为默认导出仍然是 a:

import a from "./foo1.js"; import aWithNewName from "./foo1.js";

如果您要从 foo1 导出,则无需添加两个 js 文件,您只需添加要导入的文件。试试这个方法:

// foo1.js
export const a = 2;

// foo2.js
import { a } from "./foo1.js";
console.log(a);
 <script src='./scripts/foo2.js' type='module'></script>