如何在浏览器中加载简单的es6模块?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在浏览器中加载简单的es6模块?相关的知识,希望对你有一定的参考价值。
我正在尝试使用新浏览器的功能,允许您加载与脚本相关的javascript模块。
这个例子似乎超级直截了当。您只需将类型属性从"text/javascript"
更改为"module"
。
我有一个简单的test.js文件,它只抓取一个DOM节点并将其内部html设置为“Hello”:
const output = document.querySelector("#output");
output.innerHTML = "hello";
这适用于type = "text/javascript"
,但与type = "module"
失败:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS Modules</title>
</head>
<body>
<main>
<h1>JS Modules</h1>
<div id="output"></div>
</main>
<script type="module" src="./test.js"></script>
</body>
</html>
我错过了什么?
答案
<script type="module"></script>
只在现代浏览器中支持。他们在......
- Safari 10.1。
- Chrome 61。
- Firefox 54 - 在about:config中的dom.moduleScripts.enabled设置后面。
- 边缘16。
除此之外的其他浏览器,您的脚本将无法加载
为了向后兼容,您可以添加nomodule
脚本
<script type="module" src="./test.js"></script>
<script nomodule src="fallback.js"></script>
这是一个更完整的参考https://jakearchibald.com/2017/es-modules-in-browsers/
以上是关于如何在浏览器中加载简单的es6模块?的主要内容,如果未能解决你的问题,请参考以下文章