Vue组件的基本结构是什么?template和script如何配合工作?

vue组件的基本结构由template、script和style三部分组成,其中template和script是核心。一、template作为组件的“骨架”,使用html模板和vue语法绑定数据与事件;二、script作为组件的“大脑”,定义数据、方法和生命周期钩子;三、vue将template编译为渲染函数,自动响应script中数据变化并更新dom;四、细节上需注意template只能有一个根元素,变量名需一致,vue 3可使用简化语法。

Vue组件的基本结构是什么?template和script如何配合工作?

Vue组件的基本结构主要由三部分组成:template、script 和 style。这三部分分别负责组件的视图结构、逻辑行为和样式表现。其中,template 和 script 是最核心的部分,它们一起决定了组件如何渲染和交互。

简单来说,template 负责写页面长什么样,而 script 负责告诉它这些内容怎么动起来。


一、template 是组件的“骨架”

在 Vue 单文件组件中, 标签里写的其实是 HTML 模板,只不过可以使用 Vue 的模板语法来绑定数据、响应事件等。

立即学习前端免费学习笔记(深入)”;

比如你可以这样写:

<template>   <div>     <h1>{{ title }}</h1>     <button @click="onClick">点我</button>   </div> </template>

这段代码中的 {{ title }} 和 @click 都不是原生 HTML 的写法,而是 Vue 提供的指令和插值语法。它们能正常工作,是因为 script 中提供了对应的数据和方法。


二、script 是组件的“大脑”

<script> 部分定义了组件的行为和数据来源。你可以在里面定义 data、methods、computed、生命周期钩子等。</script>

例如:

<script> export default {   data() {     return {       title: 'Hello Vue'     }   },   methods: {     onClick() {       this.title = '你点了按钮!'     }   } } </script>

这部分定义了 title 数据和 onClick 方法,然后 template 就可以使用这些变量和方法来展示动态内容和响应用户操作。


三、template 和 script 是如何配合工作的?

Vue 在运行时会把 template 编译成一个渲染函数,这个函数会在执行时访问 script 中定义的数据,并生成最终的 DOM。当数据变化时,Vue 会自动重新运行渲染函数,更新页面。

举个例子,当你点击按钮触发 onClick 方法修改 title 后,Vue 会检测到数据变化,然后自动更新页面上显示的标题内容。

这种机制让开发者不需要手动操作 DOM,只需要关心数据状态,ui 就能自动同步。


四、一些容易忽略但重要的细节

  • template 只能有一个根元素,否则会报错。比如不能直接写多个
    并列,必须包裹在一个父元素里。

  • 如果你用的是 Vue 3 的 语法,就不需要显式导出对象,可以直接声明变量和方法,它们会自动暴露给 template 使用。
  • 模板里的变量名必须和 script 中定义的一致,否则会变成 undefined,导致页面不显示或报错。

  • 基本上就这些。理解好 template 和 script 的分工和协作方式,就能更顺畅地开发 Vue 组件了。

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享