【发布时间】:2020-04-22 22:21:03
【问题描述】:
考虑以下文件结构和内容:
js
└─ test
├─ modules
│ └─ math.mjs
└─ main.mjs
math.mjs:
export function square(v) { return v * v; }
main.mjs:
import { square } from './modules/math.mjs';
console.log(square(2));
在http://server.local/module-test(通过 Apache Web 服务器)的一个简单页面上,我正在尝试加载main.mjs:
<script type="module" src="http://server.local/js/test/main.mjs"></script>
但浏览器不断抱怨 MIME 类型,例如:
加载模块脚本失败:服务器以非 JavaScript MIME 类型“”响应。根据 HTML 规范对模块脚本强制执行严格的 MIME 类型检查。
我在import 声明中尝试了其他相对引用(通过/、./ 和../)但无济于事!
那么,我错过了什么让它工作?
【问题讨论】:
-
将服务器配置为使用适当的 javascript MIME 类型提供
.mjs文件,或者只是尝试使用.js文件扩展名。
标签: javascript import module mime-types