Vue3 父子组件传值, 跨组件传值,传函数

目录

1.父组件向子组件传值

[1.1 步骤](#1.1 步骤)

[1.2 格式](#1.2 格式)

[2. 子组件向父组件传值](#2. 子组件向父组件传值)

[1.1 步骤](#1.1 步骤)

[1.2 格式](#1.2 格式)

[3. 跨组件传值](#3. 跨组件传值)

运行

[4. 跨组件传函数](#4. 跨组件传函数)

[​5. 总结](#5. 总结)

[1. 父传子](#1. 父传子)

[2. 子传父](#2. 子传父)

[3. 跨组件传值(函数)](#3. 跨组件传值(函数))


1.父组件向子组件传值

1.1 步骤

  1. 在父组件中引入子组件
  2. 在子组件标签中自定义属性
  3. 在子组件里使用**definePorps("属性名")**获取

1.2 格式

父组件:

<Down propMsg = '值' />

<子组件名 自定义属性名 = '值'
子组件:

const emits = defineProps( ' 自定义属性名 ' )

2. 子组件向父组件传值

1.1 步骤

  1. 在子组件中自定义事件
  2. 在子组件中使用defineEmits定义对象
  3. 使用对象(事件名.{参数})

1.2 格式

子传父

父组件

<Down @emitsMsg = '函数名'

<子组件名 @自定义事件 = '函数名'

子组件

const emits = defineEmits( " emitMsg " )

const emits = defineEmits( ' 自定义事件名 ' )

3. 跨组件传值

也就是 A是B的父组件 , B是C的父组件 , 而A组件需要给C组件传递参数(值,对象,响应式数据等)

首先准备三个vue文件

在App(爷组件)中, 定义一个数据, 并用provide 函数, 引入Son.vue(子组件)

在Son.vue中引入sonson.vue组件(孙组件)

在sonson.vue组件中, 用**inject()**函数去获取值

运行

4. 跨组件传函数

与跨组件传值类似, 只不过是将一个 换成了 函数

首先定义 一个函数, 然后通过**provide()**进行传函数

5. 总结

1. 父传子

在父组件中自定义**属性名,**然后在子组件中, 使用defineProps( ' 属性名 ' ) 获取值

2. 子传父

在父组件中自定义事件名 , 然后子组件用**defineEmits( ' 事件名 ' )**来创建对象, 再通过对象调用函数对父组件进行传值

3. 跨组件传值(函数)

首先在爷组件中定义数据, 然后使用 provide( ' 数据名 ' , 数据 ) 传递数据. 在孙子组件中, 使用**inject( ' 数据名 ' )**函数来接收数据

相关推荐
zzzzzz310几秒前
react-bits:酷炫动效之外,React 组件库还能提供什么
javascript·react.js·动效
web打印社区7 小时前
网页静默打印热敏小票:从 HTML 到出纸的完整指南
前端·javascript·vue.js·electron·pdf·html
剪刀石头布啊8 小时前
设计一个多计时任务的任务管理功能
前端
ModyQyW9 小时前
vite-plugin-uni-manifest 更新了什么
前端·typescript·uni-app
Asize10 小时前
AI 协作开发新范式:我用 SDD 做了个排版 npm 包
前端·人工智能
kyriewen11 小时前
我把今年流传的前端 AI 面试题整理了一遍——4 类场景题+回答框架(附速查表)
前端·面试·程序员
计算机魔术师12 小时前
国产多模态模型正面硬刚Opus旗舰:差距从30%缩到3%
前端
风骏时光牛马12 小时前
程序员进阶:深度思考,解锁职场成长的底层逻辑
前端
IT_陈寒12 小时前
用了Proxy才发现以前的JavaScript白写了
前端·人工智能·后端
爱丶不疚12 小时前
Eval: Agent 说的 Eval 是什么?从单测、TDD 到 Sentry 聊起
前端·ai编程·vibecoding