当前位置: 首页 > article >正文

在script标签写export会抛错

 在html中用的比较多的最原始是<script type="text/javascript" src="xx.js"></script>

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" src="xxxxx.js"></script>

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

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


http://www.kler.cn/a/1920.html

相关文章:

  • 机器学习04-为什么Relu函数
  • MyBatis通过注解配置执行SQL语句原理源码分析
  • Java Spring Boot 项目中嵌入前端静态资源:完整教程与实战案例
  • java中list和map区别
  • 多功能护照阅读器港澳通行证阅读机RS232串口主动输出协议,支持和单片机/Linux对接使用
  • petalinux-adi ---移植adi内核(一)
  • 详解结构体内存对齐
  • 学校教的Python,找工作没企业要,太崩溃了【大四真实求职经历】
  • 量子计算(10)量子算法2:Deutsch-Jozsa算法
  • centos yum安装英伟达显卡驱动
  • Intel I210网卡
  • 分享5款让你工作事半功倍的软件
  • C语言数据结构初阶(7)----队列
  • HBase高手之路4-Shell操作
  • 苹果发布无线充新专利,苹果Find My技术成为近几年苹果的重要创新
  • PCIE时钟解说
  • (数据结构)八大排序算法
  • 【绘图】比Matplotlib更强大:ProPlot
  • CLIP:一种基于视觉和语言相互关联的图像分类模型
  • 蓝桥杯刷题冲刺 | 倒计时20天
  • 数字图像处理 Delaunay三角剖分和Voronoi图
  • 从零实现深度学习框架——学习率调整策略介绍
  • 一文带你领略 WPA3-SAE 的 “安全感”
  • Java之链表(不带头结点,带头结点,迭代实现,递归实现)
  • 2023年 ZZU ACM 招新赛暨选拔赛题解
  • yolov8训练筷子点数数据集