在script标签写export会抛错

 在html中用的比较多的最原始是

type类型 

text/javascript ,text/ecmascriptapplication/javascript, 和application/ecmascript,application/json,module

应对标题,着重看下type=”module”

平时写纯静态页时,不会用到,但是大家使用vue-cli,vite都使用得最多的模块化,import,export使用比较频繁 如果不写type=”module”,则export就会报错。

JavaScript 有两种源文件,一种叫做脚本,一种叫做模块。这个区分是在 ES6 引入了模块机制开始的,在 ES5 和之前的版本中,就只有一种源文件类型(就只有脚本)

脚本是可以由浏览器或者 node 环境引入执行的,而模块只能由 JavaScript 代码用 import 引入执行。

从概念上,我们可以认为脚本具有主动性的 JavaScript 代码段,是控制宿主完成一定任务的代码;而模块是被动性的 JavaScript 代码段,是等待被调用的库。

模块和脚本之间的区别仅仅在于是否包含 import 和 export。脚本是一种兼容之前的版本的定义,在这个模式下,没有 import 就不需要处理加载“.js”文件问题。现代浏览器可以支持用 script 标签引入模块或者脚本,如果要引入模块,必须给 script 标签添加 type=“module”。如果引入脚本,则不需要 type。


所以script 标签如果不加type=“module”,默认认为我们加载的文件是脚本而非模块,如果我们在脚本中写了 export,当然会抛错。

此文章为3月Day17学习笔记,内容来源于极客时间《重学前端》,推荐该课程。

你可能感兴趣的:(javascript,前端,vue.js)