为什么我在浏览器中无法使用es6的模块化
1. 无法使用es6的模块化2. 因为浏览器对于es6的模块化支持程度有限,目前只有部分浏览器支持es6的模块化语法,而且支持的程度也不完全一致。
因此,如果你在浏览器中使用es6的模块化语法,可能会出现兼容性问题,导致无法正常使用。
3. 为了解决这个问题,你可以使用一些工具或者库来转换es6的模块化语法为浏览器可识别的语法,比如使用Babel进行转换。
另外,你也可以考虑使用其他的模块化方案,比如CommonJS或者AMD,这些方案在浏览器中的兼容性更好。
因为只有在浏览器完全下载完一个 js 文件,并且宿主引擎解析到 require 或 import 这些关键字的时候,才知道还有依赖需要下载并解析。
然而该文件依赖的这个模块可能还依赖于其他模块,理论上依赖树可以有无限长,目前这种依赖的同步加载方式无疑会带来严重的进程阻塞和极高的网络开销。
目前并没有很好的解决方案使浏览器端自然地使用各个模块系统,只能使用 webpack 等工具预先将所有依赖打包,最终在浏览器环境中运行。
首先得看浏览器是否支持模块化,支持的话可以将script标签type属性改成module(type=”module”) 浏览器就会将代码视为 ECMAScript module 处理
还没有评论,来说两句吧...