vue3 父子组件传值

news/2024/11/29 8:55:39/

一,子传父

父组件

<script setup>
import HelloWorld from './components/HelloWorld.vue'
import { ref } from 'vue'//直接赋值页面不会自动渲染,使用ref存储响应式数据
import { defineExpose } from "vue";父传子
let val = ref('');
const childFun= value =>{console.log('----',value)// 这里直接赋值value,在页面上直接使用val即可!val.value=valueconsole.log('val',val)
}
</script><template><header><div class="wrapper"><HelloWorld @child="childFun"/></div></header>
<div>我是子组件过来的值:{{val}}</div>
</template>

子组件

<script setup>
import {  defineEmits } from 'vue'//子传父值先引用emits方法defineProps({msg: {type: String,required: true}})
//要先声明,不然会报错
const emits = defineEmits(['child'])
function tofu (){emits('child','123')
}
</script><template><div class="greetings"><h1 class="green">msg</h1><button @click="tofu">子组件按钮</button></div>
</template>

二,父传子

父组件

<script setup>
import HelloWorld from './components/HelloWorld.vue'</script><template><header><div class="wrapper"><HelloWorld msg='我是父组件'/></div></header></template>

子组件

<script setup>defineProps({msg: {type: String,required: true}})</script><template><div class="greetings"><h1 class="green">{{msg}}</h1></div>
</template>

vue3和vue2区别还是有一些的,V2传值直接赋值,有时是可以直接数据响应渲染

setup可以直接写在script标签上,也可以写成函数形式

const声明的变量,在后期不能进行修改,不然会报错,需后期修改的变量尽量使用let ,var,根据情况使用


http://www.ppmy.cn/news/1121327.html

相关文章

@Api注解

Api 是一个常用的注解&#xff0c;用于在 Java 代码中标记和描述 RESTful API 接口。 Api 注解通常与其他注解&#xff08;如 RestController、RequestMapping 等&#xff09;一起使用&#xff0c;用于提供 API 的元数据和文档信息。它可以用于类级别和方法级别。 在类级别上…

OpenAI官方吴达恩《ChatGPT Prompt Engineering 提示词工程师》(3)摘要

摘要/ Summarizing 如何使用大模型来概括文本 环境准备 和&#xff08;①指南&#xff09;一样需要搭建一个环境 导入OpenAI、加载API密钥以及这个getCompletion辅助函数 import openai import osfrom dotenv import load_dotenv, find_dotenv _ load_dotenv(find_dotenv(…

【C语言】指针的进阶(四)—— 企业笔试题解析

笔试题1&#xff1a; int main() {int a[5] { 1, 2, 3, 4, 5 };int* ptr (int*)(&a 1);printf("%d,%d", *(a 1), *(ptr - 1));return 0; } 【答案】在x86环境下运行 【解析】 &a是取出整个数组的地址&#xff0c;&a就表示整个数组&#xff0c;因此…

基于微信小程序的小区服务管理系统设计与实现(源码+lw+部署文档+讲解等)

前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f447;&#x1f3fb;…

JavaScript的Web Worker

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ JavaScript的Web Worker⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量…

探索最佳建筑工程项目管理软件,提高效率与协作

相比于其他行业的项目管理&#xff0c;建筑工程项目管理的周期一般更长&#xff0c;涉及部门更多&#xff0c;传统的管理方式无法照顾到方方面面。因此越来越多的工程团队希望能通过现代化数据管理工具来协助自己进行建筑工程项目管理。 正所谓有需求就有市场&#xff0c;目前市…

pymysql执行DDL语句

视频版教程 Python操作Mysql数据库之pymysql模块技术 pymysql对操作mysql DDL(Data Definition Language) 数据库模式定义语言&#xff0c;提供了很好的支持。 连接MySQL数据库后&#xff0c;可以使用cursor()方法创建一个游标对象。游标对象用于执行MySQL语句并返回结果。 …

git解决冲突和推送历史版本到指定分支上

命令解决冲突: ​ git add . ​ git commit -m"备注" ​ git pull(这里如果报错,并且下面出现合并分支,就可以关闭窗口了) ​ 看上面的报错的文件夹,手动修改内容(也可以提前保留一份,使用CV大法) ​ 最后再 ​ git add . ​ git commit -m"备注" ​ (这里…