详解单文件组件

简介: 详解单文件组件

当你创建 Vue 单文件组件时,通常会包含三个部分:<template><script><style>。这三个部分分别用于定义组件的模板、逻辑和样式。让我更详细地解释一下它们的作用和用法:

<template>

<template> 标签用于定义组件的模板,即组件的 HTML 结构。在模板中,你可以使用 Vue 的模板语法来描述组件的渲染逻辑,包括插值、指令、事件绑定等。一般情况下,组件的模板应该只有一个根元素。

<template>
  <div>
    <h1>{{ message }}</h1>
    <button @click="handleClick">Click me</button>
  </div>
</template>

<script>

<script> 标签用于定义组件的逻辑部分,即组件的 JavaScript 代码。在 <script> 标签中,你可以导入其他模块、定义组件的数据和方法、监听生命周期钩子等。在 Vue 3 中,你可以使用 <script setup> 来更简洁地编写组件的逻辑。

<script>
export default {
  data() {
    return {
      message: 'Hello, Vue!'
    }
  },
  methods: {
    handleClick() {
      console.log('Button clicked');
    }
  }
}
</script>

<style>

<style> 标签用于定义组件的样式,即组件的 CSS 样式表。在 <style> 标签中,你可以编写组件的样式规则,包括选择器、属性、值等。你可以使用普通的 CSS 语法,也可以使用预处理器(如 SASS、LESS 等)来编写样式。

<style>
h1 {
  color: blue;
}
button {
  background-color: green;
  color: white;
}
</style>

在上面的代码中,<template> 标签定义了组件的模板,包含了一个标题和一个按钮。<script> 标签定义了组件的逻辑,包含了数据 message 和方法 handleClick。<style> 标签定义了组件的样式,分别对标题和按钮进行了样式设置。


这三个部分共同构成了 Vue 单文件组件的内容,分别描述了组件的外观、行为和样式。


相关文章
|
2月前
|
存储 API
vue3中如何动态自定义创建组件并挂载
vue3中如何动态自定义创建组件并挂载
438 90
|
22天前
|
缓存 JavaScript
Vue加载网络组件(远程组件)
【10月更文挑战第23天】在 Vue 中实现加载网络组件(远程组件)可以通过多种方式来完成。
|
3月前
|
监控 数据可视化 索引
四个组件配置说明
官方文档!!!!!!!!! 1.在Filebeat中配置info.log日志文件的路径,以及要将日志发送到Logstash的地址和端口,可以在Filebeat的配置文件 filebeat.yml中添加如下配置: Copy filebeat.inputs: - type: log paths: - /usr/logs/info.log fields: log_type: info output.logstash: hosts: ["localhost:5044"] 这里使用filebeat.inputs指定要监控的日志文件路径
49 5
|
4月前
uniapp 新建组件
uniapp 新建组件
51 0
|
5月前
|
JavaScript
vue父子组件传值,父组件内容更新子组件内容不实时更新
vue父子组件传值,父组件内容更新子组件内容不实时更新
2167 0
|
6月前
|
JSON JavaScript 小程序
uniapp的配置文件、入口文件、主组件、页面管理部分
uniapp的配置文件、入口文件、主组件、页面管理部分
|
中间件
Nuxt处理全局组件的显示与隐藏
在Nuxt开发过程中,大家会遇到需要控制全局组件的显示与隐藏。比如说移动端的路由导航栏、头部的返回操作。。。 为了使切换页面的同时,确定是否展示全局组件,保证页面展示的平稳过渡。 下面是我在项目中用到一个办法,已实现。
258 0
|
JavaScript 开发者
非单文件组件
非单文件组件
95 0
|
JavaScript 开发者
组件-创建组件的方式1|学习笔记
快速学习组件-创建组件的方式1
组件-创建组件的方式1|学习笔记
|
JavaScript 开发者
组件-创建组件的方式3|学习笔记
快速学习组件-创建组件的方式3
组件-创建组件的方式3|学习笔记