【发布时间】:2021-04-11 07:01:34
【问题描述】:
我阅读了很多关于模块的内容,并认为我真的理解它。 但后来我有一个简单的例子,有两个 java 脚本文件: 1.js文件:
import './2.js';
console.log('importing');
2.js:
console.log('exporting module');
const a = 10
export const b = [];
它是声明的 html 文件:
<defer src="1.js">
然后在运行代码时出现以下错误:
未捕获的语法错误:不能在模块外使用 import 语句
现在我想了解,如果我在上面的括号中添加了一个 type="module",是不是使得 1.js成为一个模块?!?如果答案是肯定的,那么是什么让 2.js 成为一个模块而不仅仅是一个脚本呢?
另外导入这种方式:
import './2.js'
是否会从 2.js 导入 const b?我知道它会打印到控制台,但我不明白是否会导入 const b 并且在我的浏览器中运行代码时由于不清楚的原因,我得到了两个错误: 1.CORS 策略已阻止从源“null”访问“file:///C:/Users/Dor/Desktop/17-Modern-JS-Modules-Tooling/starter/script.js”处的脚本:Cross源请求仅支持协议方案:http、data、chrome、chrome-extension、chrome-untrusted、https。
2.GET file:///C:/Users/Dor/Desktop/17-Modern-JS-Modules-Tooling/starter/script.js net::ERR_FAILED
【问题讨论】:
标签: javascript module