直接引用带有import关键字的JS脚本会报错

一般情况下我们通过Script标签来引用JS脚本

<script src="123.js"></script>

但是在某些情况下,JS脚本会带有ES6的import关键字用来导入其他模块,比如:

//123.js
import ABC from "./ABC.js";
ABC("Hello World");

//ABC.js
export default function (String) {
    console.log(String);
}

↑ 示例脚本如上 ↑

Uncaught SyntaxError: Unexpected identifier

浏览器出现错误:提示不识别该脚本中的import标识符

<script type="module" src="ABC.js"></script>

修复浏览器错误:显式指定脚本类型为“Module”

Access to script at 'file:///C:/123.js' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.

GET file:///C:/123.js net::ERR_FAILED

浏览器依然报错,提示被CORS策略阻止,不能直接通过文件路径引用带有import关键字的JS脚本

不使用服务器,不编译这些脚本文件,不使用第三方工具

只在纯Chrome浏览器上进行调试,那么该如何解决跨域这个问题?

2个回答

export default function ABC(s) { console.log(s);}
<script type="module" >
    import ABC from './ABC.js';
    ABC(123);
</script>
ylqylq001
吏小加 试过了,一样不行
5 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问