详解单文件组件

简介: 详解单文件组件

当你创建 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 单文件组件的内容,分别描述了组件的外观、行为和样式。


相关文章
|
14天前
|
存储 API
vue3中如何动态自定义创建组件并挂载
vue3中如何动态自定义创建组件并挂载
206 90
|
2月前
|
监控 数据可视化 索引
四个组件配置说明
官方文档!!!!!!!!! 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指定要监控的日志文件路径
45 5
|
4月前
|
JavaScript
vue父子组件传值,父组件内容更新子组件内容不实时更新
vue父子组件传值,父组件内容更新子组件内容不实时更新
901 0
|
5月前
|
JavaScript
组件中写选项的顺序(vue的问题)
组件中写选项的顺序(vue的问题)
26 0
|
中间件
Nuxt处理全局组件的显示与隐藏
在Nuxt开发过程中,大家会遇到需要控制全局组件的显示与隐藏。比如说移动端的路由导航栏、头部的返回操作。。。 为了使切换页面的同时,确定是否展示全局组件,保证页面展示的平稳过渡。 下面是我在项目中用到一个办法,已实现。
239 0
|
JavaScript 安全 前端开发
vue打包以后,如何配置文件修改全局接口地址
vue打包以后,如何配置文件修改全局接口地址
vue打包以后,如何配置文件修改全局接口地址
|
资源调度 前端开发 JavaScript
React默认工程的目录说明
React默认工程的目录说明
React默认工程的目录说明
|
JavaScript 开发者
非单文件组件
非单文件组件
92 0
|
JavaScript
Vue——子组件可以修改父组件数据吗
组件化开发过程中有个单向数据流原则,不在子组件中修改父组件数据是个常识问题。
457 0