vue3 +ts 学习记录

ops/2025/1/13 13:09:45/

1 父子传参
父传子
父组件

<TestFuzichuancan :title="title"/>
const title = '父组件标题'

子组件

import { defineProps  } from 'vue';
interface Props {title?: string,arr: number[];
}
const props = withDefaults(defineProps<Props>(), {title: '默认消息',arr: () => [3, 4, 5],});或
const props = withDefaults(defineProps<{title: string;arr: number[];
}>(), {arr: () => [3, 4, 5],title: 'aa44a'
});

子传父
父组件
方法1

 <TestFuzichuancan @on-click="onclick"/>

子组件

const emit = defineEmits(['on-click'])
const send=()=>{emit('on-click',{name:'aaa',age:12})
}

方法2
父组件

 <TestFuzichuancan @on-click="onclick"/>

子组件

const emit = defineEmits<{(e:'on-click',data:object):void
}>()
const send=()=>{emit('on-click',{name:'aaa',age:12})
}

父元素获取子元素中的数据和方法
子元素

const send=()=>{emit('on-click',{name:'aaa',age:12})
}

父元素

<TestFuzichuancan  ref="childRef" /><button @click="diaoyong">调用子组件方法</button>const childRef = ref(null);  // 名称要保持和父原色的ref 值保持一致const diaoyong=()=>{if(childRef.value){childRef.value.eat()}
}

http://www.ppmy.cn/ops/149740.html

相关文章

Vue.js 使用插槽(Slots)优化组件结构

Vue.js 使用插槽&#xff08;Slots&#xff09;优化组件结构 今天我们聊聊 Vue.js 的一个超实用功能——插槽&#xff08;Slots&#xff09;。插槽是 Vue 组件开发中的神器&#xff0c;用好它&#xff0c;你可以让组件变得更灵活、更可复用&#xff0c;还能写出优雅的代码结构…

defineProps 和 Pinia 的使用方法和区别总结

1. defineProps 的使用方法和特点 1.1 使用方法 defineProps 是 Vue 3 中用于声明组件 props 的函数&#xff0c;通常在 <script setup> 中使用。它用于定义父组件传递给子组件的数据。 <!-- 子组件 --> <template><p>{{ message }}</p> <…

django基于Python的汽车销售管理系统的设计与实现

Django 基于 Python 的汽车销售管理系统的设计与实现 一、系统概述 Django 基于 Python 的汽车销售管理系统是一款专为汽车销售企业打造的综合性信息化管理平台。该系统借助 Django 框架的高效性、安全性以及 Python 语言丰富的库和工具&#xff0c;全面覆盖汽车销售业务的各…

Scala语言的软件工程

Scala语言的软件工程 引言 在当今软件开发领域&#xff0c;编程语言的选择对于项目的成功与否至关重要。Scala&#xff0c;作为一种具有函数式编程和面向对象编程特性的强大语言&#xff0c;近年来在开发者社区中获得了越来越高的认可。Scala的灵活性和表达能力使其成为大规模…

在 WSL 中使用 Jupyter Notebook 的 TensorBoard 启动问题与解决方法

在 WSL&#xff08;Windows Subsystem for Linux&#xff09;环境中&#xff0c;通过 Jupyter Notebook 使用 %tensorboard --logdir outputs有时会出现 “Timed out waiting for TensorBoard to start” 错误。常见原因通常是先前的 TensorBoard 进程尚未结束&#xff0c;占用…

mv指令详解

&#x1f3dd;️专栏&#xff1a;计算机操作系统 &#x1f305;主页&#xff1a;猫咪-9527-CSDN博客 “欲穷千里目&#xff0c;更上一层楼。会当凌绝顶&#xff0c;一览众山小。” 目录 基本语法 主要功能 常用选项详解 1. 移动文件或目录 2. 重命名文件或目录 3. -i&am…

pytest+allure 入门

使用allure如何生成自动化测试报​​​​​​告 &#xff1f;一文详解allure的使用 。_allure测试报告-CSDN博客 例子&#xff1a; import allure import pytest import osallure.epic("闹钟") allure.feature("闹钟增删") class TestSchedule():def setu…

网络安全 | DevSecOps:将安全融入DevOps开发生命周期

网络安全 | DevSecOps&#xff1a;将安全融入DevOps开发生命周期 一、前言二、DevSecOps 的概念与原则2.1 DevSecOps 的概念2.2 DevSecOps 的原则 三、DevSecOps 的关键实践3.1 安全需求分析与管理3.2 安全设计与架构3.3 安全编码实践3.4 安全测试策略3.5 安全部署与运维 四、D…