vue3深入组件:props

news/2024/6/30 10:39:11

Props使用

1、组件需要声明它接收的props,vue才知道外部传入了哪些参数。
2、在使用<script setup>的单文件组件中,使用defineProps来声明组件接收的参数。

<script setup>
const props = defineProps(['title','message'])
console.log(props.title)
</script>
<template>
<div>{{message}}</div>
<div>{{props.message}}</div>
</template>

3、在不使用<script setup>的组件中,可以使用props 选项来声明

export default {
  props: ['title','message'],
  setup(props) {
    console.log(props.title)
  }
}

4、props声明时可校验类型,设置默认值

<script setup>
const props = defineProps({
	title: {
		type: String,
		default: ''
	},
	menuList: {
		type: Array,
		default() {
			return [];
		}
	}
})
console.log(props.title)
console.log(props.menuList)
</script>

注意事项

1、Props 名字格式应该使用小驼峰,在组件中使用kebab-case(小写短横线);

// 父组件中
<AsideMenu menu-name="home"/>
// 子组件中
<script setup>
const props = defineProps(['menuName'])
console.log(props.menuName)
</script>

2、props遵循单向绑定原则,props因父组件中的更新而变化,在子组件中,数据是只读的,不能更改。

const props = defineProps(['name']);
props.name = 'article management'; // props是只读,禁止修改。

http://lihuaxi.xjx100.cn/news/2122503.html

相关文章

常见的数据结构相关的面试问题

1.请解释什么是数据结构&#xff0c;以及它在计算机科学中的重要性。 数据结构定义&#xff1a;数据结构是一种组织数据的方式&#xff0c;它包括数据元素之间的关系以及对这些数据元素进行操作的规则。常见的数据结构包括数组、链表、栈、队列、树、图等。 数据结构的重要性&…

剧变:人类社会与国家危机的转折点 - 三余书屋 3ysw.net

精读文稿 今天我们解读的这本书是《巨变》。副标题是人类社会与国家危机的转折点&#xff0c;这是一个充满风险和危机的时代。比如作为个人&#xff0c;我们可能会遭遇失业、离婚、亲朋好友的意外去世。作为国家&#xff0c;会遭遇经济危机、社会动荡甚至战争。整个世界也会陷入…

Qt教程 — 3.7 深入了解Qt 控件: Layouts部件

目录 2 如何使用Layouts部件 2.1 QBoxLayout组件-垂直或水平布局 2.2 QGridLayout组件-网格布局 2.3 QFormLayout组件-表单布局 在Qt中&#xff0c;布局管理器&#xff08;Layouts&#xff09;是用来管理窗口中控件位置和大小的重要工具。布局管理器可以确保窗口中的控件在…

在发短信时,如何避免链接太长的问题?

在如今的数字时代&#xff0c;我们经常通过短信发送链接。但有时候&#xff0c;链接可能会太长&#xff0c;短信长度超过70个字符时&#xff0c;会按多条计费&#xff0c;成本一下子就翻倍了。这给我们带来了一些困扰。别担心&#xff0c;这里有几种简单的方法可以处理这种情况…

JavaParser 手动安装和配置

目录 前言 一、安装 Maven 工具 1.1 Maven 软件的下载 1.2 Maven 软件的安装 1.3 Maven 环境变量配置 1.4 通过命令检查 Maven 版本 二、配置 Maven 仓库 2.1 修改仓库目录 2.2 添加国内镜像 三、从 Github 下载 JavaParser 3.1 下载并解压 JavaParser 3.2 从路径打…

Qt实现简易的多线程TCP服务器(附源码)

目录 一.UI界面的设计 二.服务器的启动 三.实现自定义的TcpServer类 1.在widget中声明自定义TcpServer类的成员变量 2.在TcpServer的构造函数中对于我们声明的m_widget进行初始化&#xff0c;m_widget我们用于后续的显示消息等&#xff0c;说白了就是主界面的更新显示等 …

卓健易控zj-v8.0设备智能控费系统

卓健易控zj-v8.0设备智能控费系统 详细可联系&#xff1a;19138173009 在现今医疗技术日新月异、突飞猛进的时代&#xff0c;我院服务患者的实力与日俱增。随着先进辅助检查设备的不断完善和引进&#xff0c;医生们如同得到了得力助手&#xff0c;能够为患者做出更加精确的诊断…

labelImg | windows anaconda安装labelImg

labelImg 是图片标注软件&#xff0c;用于数据集的制作、标注等等。 下面介绍 labelImg 的安装过程。 用的是 anaconda&#xff0c;所以以 anaconda prompt 作为终端&#xff1a; 在 Anaconda Prompt 中依次运行以下命令&#xff08;注意大小写&#xff09;&#xff1a; pi…