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

Vue 的单文件组件(.vue 文件)script 标签的使用说明

在 Vue 的单文件组件(.vue 文件)中,最多可以编写 2 个 <script> 标签,但需要满足特定条件:


1. Vue 3 的情况(主流用法)

从 Vue 3.2+ 开始,官方支持以下两种形式共存:

vue

<script>
// 普通 script (选项式 API / 非 setup 的逻辑)
export default {inheritAttrs: false, // 可声明普通选项customOptions: {} // 自定义配置
}
</script><script setup>
// 组合式 API 的 setup 语法糖
const msg = "Hello World"
</script>

两个 <script> 需要使用相同的语言脚本

vue

<script lang="ts">

</script>

<script setup lang="ts" name="SampleInput">

</script>

规则:
  • 最多 1 个普通 <script>(不带 setup

  • 最多 1 个 <script setup>(带 setup 属性)

  • 顺序不限,但两者逻辑会合并到组件中


2. Vue 2 的情况

传统 Vue 2 的 .vue 文件通常 只能有 1 个 <script> 标签,用于定义组件选项:

vue

<script>
export default {data() { return { msg: "Hello" } }
}
</script>

3. 其他注意事项

1、两个 <script> 需要使用相同的语言脚本

2、import必须在顶部,可以集中在任意一个<script>的顶部,也可以分散在两个<script>的顶部

3、export必须在没有setup的 <script> 

vue

<script lang="ts">import { reactive } from "vue";export const applySampleListSymbol = Symbol("applySampleList");</script><script setup lang="ts" name="SampleInput">import { ref } from "vue";......</script><template></template><style scoped lang="scss"></style>

若使用 不同语言脚本需构建工具支持),可通过 lang 属性区分多个 <script>,但实际开发中极少需要这么做:

vue

<script lang="ts">
// TypeScript 逻辑
</script><script lang="js">
// JavaScript 逻辑
</script>

总结

Vue 版本最多 script 数量条件
Vue 321 个普通 + 1 个 setup
Vue 21无特殊属性

实际开发中推荐保持单一 <script>(或 setup)以保证代码可维护性。若有特殊需求(如混合选项式与组合式 API),才使用双 script 模式。

相关文章:

  • AI赋能安全调度系统:智能升级与功能跃迁
  • KMS工作原理及其安全性分析
  • Leetcode19(亚马逊真题):删除链表的倒是第N个节点
  • 特征存储的好处:特征存储在机器学习开发中的优势
  • dumpsys activity activities中的Task和ActivityRecord信息解读
  • 【Linux网络】应用层自定义协议与序列化及Socket模拟封装
  • 2025上海车展|紫光展锐发布新一代旗舰级智能座舱芯片平台A888
  • Trae 编程工具 Cline 插件安装与 Claude 3.7 API Key 自定义配置详解
  • 济南国网数字化培训班学习笔记-第二组-6-输电线路现场教学
  • 热度大幅度下降,25西电经济与管理学院(考研录取情况)
  • html单页业务介绍源码
  • RuntimeError: “unfolded2d_copy“ not implemented for ‘Half‘
  • 从零搭建高可用分布式限流组件:设计模式与Redis令牌桶实践
  • 跑MPS产生委外采购申请(成品)
  • 线程同步与互斥(互斥)
  • Vue.js 的组件化开发指南
  • 【k8s】KubeProxy 的三种工作模式——Userspace、iptables 、 IPVS
  • 如何应对客户提出的不合理需求
  • 第四章: 服务集成抽象
  • 3.ArkUI Image的介绍和使用
  • 滁州一交通事故责任认定引质疑:民警和司法鉴定人被处罚,已中止诉讼
  • 中共中央政治局召开会议,分析研究当前经济形势和经济工作,中共中央总书记习近平主持会议
  • 公安部知识产权犯罪侦查局:侦破盗录传播春节档院线电影刑案25起
  • 审议民营经济促进法草案等,十四届全国人大常委会第十五次会议将举行
  • 国家发改委党组在《人民日报》发表署名文章:新时代新征程民营经济发展前景广阔大有可为
  • 神二十成功对接空间站