位置: IT常识 - 正文

VUE3传值相关六种方法(vue传值inject)

编辑:rootadmin
VUE3传值相关六种方法

目录

1.父传子(props)

 2.子传父组件方法和值(emit)

 3.子传父(v-model)

4.父组件调用子组件方法(ref)

5.VUEX

推荐整理分享VUE3传值相关六种方法(vue传值inject),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue三种传值方式,vue传值bus,vue三种传值方式,vue值传递,vue中传值的方式,vue三种传值方式,vue3.0传值,vue3.0传值,内容如对您有帮助,希望把文章链接给更多的朋友!

6.第六种爷孙传值provide / inject(官方并不建议未总结)

1.父传子(props)

VUE3父传子

1.将fatherToChild的值传递到index子组件之中并且在父组件中操作按钮子组件数据会跟随变化

<div class="bgc fed"> <div class="father"> <p>我是父组件</p> <p> <button @click="changeFather">更改父组件数值</button> </p> </div> <index :fatherToChild="fatherToChild" /> </div>

2.引入vue的import

import { defineComponent, ref, reactive, toRefs } from "vue";

3.const 所要传递的数据并且写上父组件的按钮方法

const state = reactive({ fatherToChild: "fatherToChild", }); const changeFather = () => { state.fatherToChild = "changeFather"; }; return { ...toRefs(state), changeFather, };

如图所示为一开始传递fatherToChild在点击按钮之后传递数值变为changeFather

4.在子组件之中接收所传递的props

export default { props: { fatherToChild: String, }, setup(props) { return { props, }; },};

如果不确定传值为什么可cons一下传递的props在控制台观察

在子组件中引用为

<p>父组件给子组件传值:{{ props.fatherToChild }}</p>

效果如图所示

可以观察到点击父组件后子组件数值跟随变化

 2.子传父组件方法和值(emit)

同VUE2一样子组件没有办法直接更改父组件方法,选用context.emit进行方法传递

1.子组件之中写方法触发context,emit

setup(props, context) { const childChangeFather = () => { context.emit("childUseFather", "childUseFather"); }; return { props, childChangeFather, }; },

context.emit(‘方法名’,数值)

 2.父组件之中接收方法后调用更改数值

const childUseFather = (val) => { state.fatherToChild = val; }; <index :fatherToChild="fatherToChild" @childUseFather="childUseFather" />

效果如图所示

VUE3传值相关六种方法(vue传值inject)

点击前点击后

 3.子传父(v-model)

如果子传父所更改的值恰好跟父组件相同可用v-model

1.父组件之中

<index v-model:fatherToChild="fatherToChild" />

 不再需要使用@和:

2.子组件之中

const modelChange = () => { context.emit("update:fatherToChild", "modelChangeFather"); };

使用update方法,context.emit("update:方法名","传值")

效果如图所示

点击前点击后

 同时父组件更改数值子组件也会同样跟随变化

4.父组件调用子组件方法(ref)

就是使用 ref 来获取dom 然后操作里面的参数和方法。

父组件之中

<p><button @click="fatherUse">ref父组件调用子组件方法</button></p> <index ref="child" /> const child = ref(); const fatherUse = () => { child.value.fatherUseChild("fatherChangeChild"); };

在组件上绑定ref,起名为child在调用时使用child.value.方法名(“传值”)

子组件之中

const state = reactive({ children: "children", }); // 父组件调用子组件方法并且进行传值更改 const fatherUseChild = (val) => { console.log("调用成功"); state.children = val; };

接收到传值val,触发方法给children重新赋值

效果如图所示

点击最后一个按钮父组件调用时

可以观察到子组件之中子组件的值变化为fatherChangeChild 

5.VUEX

文件目录结构如图所示

 index.js之中

import { createStore } from 'vuex'import {state} from './state'import {mutations} from './mutations'import {actions} from './actions'export default createStore({ state, mutations, actions, modules: { }})

注意如果引入的时候没写{}在后续会导致store.state.字段找不到,需要store.state.state.字段才能查到数据,只有好不好用就不知道了= =

首先在state之中

本文链接地址:https://www.jiuchutong.com/zhishi/294561.html 转载请保留说明!

上一篇:uniapp封装axios?大可不必那么麻烦。(uniapp封装组件,多了一层)

下一篇:创建vue2项目(vue创建项目后开始写的步骤)

  • oppo手机微信红包提醒如何设置(oppo手机微信红包提示音在哪里设置)

    oppo手机微信红包提醒如何设置(oppo手机微信红包提示音在哪里设置)

  • 淘宝无法确认收货(淘宝无法确认收货怎么办)

    淘宝无法确认收货(淘宝无法确认收货怎么办)

  • 手机出现timeout怎么弄(手机出现fastboot怎么办)

    手机出现timeout怎么弄(手机出现fastboot怎么办)

  • 必须启用彩信才能发送此信息(必须启用彩信才能收到吗)

    必须启用彩信才能发送此信息(必须启用彩信才能收到吗)

  • oppor15手机怎么关机(oppor15手机怎么恢复出厂设置)

    oppor15手机怎么关机(oppor15手机怎么恢复出厂设置)

  • 美图秀秀怎么把三张图片横着拼在一起(美图秀秀怎么把背景图换成白色)

    美图秀秀怎么把三张图片横着拼在一起(美图秀秀怎么把背景图换成白色)

  • apple glass能干嘛(iphone glass功能)

    apple glass能干嘛(iphone glass功能)

  • 安装软件在c盘还是d盘(安装软件在c盘哪个文件夹)

    安装软件在c盘还是d盘(安装软件在c盘哪个文件夹)

  • 华为专卖店免费贴膜么(华为专卖店免费贴膜时间)

    华为专卖店免费贴膜么(华为专卖店免费贴膜时间)

  • 局域网的硬件组成(局域网硬件组成包括主机传输介质和网络连接设备)

    局域网的硬件组成(局域网硬件组成包括主机传输介质和网络连接设备)

  • 小米m1908c3ke是什么型号(小米m1908c3KE是什么型号)

    小米m1908c3ke是什么型号(小米m1908c3KE是什么型号)

  • 华为手机屏幕突然一闪一闪(华为手机屏幕突然变黄了怎么办)

    华为手机屏幕突然一闪一闪(华为手机屏幕突然变黄了怎么办)

  • w10安全模式退出后无法上网(w10安全模式退出来就没有网了)

    w10安全模式退出后无法上网(w10安全模式退出来就没有网了)

  • qq亲密关系能干什么(qq亲密关系好友可见吗)

    qq亲密关系能干什么(qq亲密关系好友可见吗)

  • 旁白有什么用(旁白旁白)

    旁白有什么用(旁白旁白)

  • 韩版iphone11和国行有什么区别(韩版苹果11好吗)

    韩版iphone11和国行有什么区别(韩版苹果11好吗)

  • 华为mate30能不能用谷歌(华为mate30能不能玩原神)

    华为mate30能不能用谷歌(华为mate30能不能玩原神)

  • vsco安卓可以用吗(vsco怎么在安卓手机上用)

    vsco安卓可以用吗(vsco怎么在安卓手机上用)

  • iphone7plus能升级ios13吗(iphone7plus能升级ios15)

    iphone7plus能升级ios13吗(iphone7plus能升级ios15)

  • 怎样查看快手直播间的人数(怎样查看快手直播买的货?)

    怎样查看快手直播间的人数(怎样查看快手直播买的货?)

  • 快手上搞笑导航是如何做到的(快手搞笑导航路线配音怎么弄的)

    快手上搞笑导航是如何做到的(快手搞笑导航路线配音怎么弄的)

  • vivoz5x支持红外遥控吗(vivoz5x支持红外线遥控吗)

    vivoz5x支持红外遥控吗(vivoz5x支持红外线遥控吗)

  • 一加7pro有红外遥控吗(一加7pro红外线功能)

    一加7pro有红外遥控吗(一加7pro红外线功能)

  • 苹果手机无法下载app是什么原因(苹果手机无法下载项目怎么回事)

    苹果手机无法下载app是什么原因(苹果手机无法下载项目怎么回事)

  • sisusbrg.exe - sisusbrg是什么进程 有什么用

    sisusbrg.exe - sisusbrg是什么进程 有什么用

  • 流转税具体的账务处理,可以怎样考虑?
  • 股东投资的钱放在哪里
  • 购货方收到红字发票
  • 非生产性费用不应计入产品成本
  • 事业单位合并财务交接
  • 个人借款给公司利息收入要交税吗
  • 饮料工业发展前景如何
  • 代理记账有什么风险吗
  • 融资租赁承租方会计账务处理流程
  • 工会经费的所得税怎么算
  • 收到实收资本要交什么税
  • 交车辆购置税可以刷信用卡吗
  • 多计费用以前年度损益调整
  • 厂区折旧
  • 增值税发票没有地址和开户行有效吗
  • 公司注销税务需要交多少钱
  • 进项票失控对销项票有影响吗?
  • 企业理财收入交哪些税
  • 建筑企业如何才能上市
  • 什么情况下只交城建税不交教育及地方税?
  • 网络直播应如何缴纳增值税?
  • 发票开了收不到钱
  • 母公司对子公司的控股比例
  • 先开票还是先预约
  • 个人开农产品发票流程
  • 公司股权分红款需要税吗
  • 公司自建办公楼
  • win11如何设置安装位置
  • 商业成本结转会计分录
  • 系统自带功能
  • 前端字符长度限制
  • linux下4种kill某个用户所有进程的方法
  • 在web页面中如果出现html语句
  • vue for循环遍历对象取值
  • 最贵的节能灯泡品牌
  • 葡萄牙海岸风光
  • 下载下来是php
  • 微信转账怎么处理退回去
  • 出口退税抵减应计入哪里
  • 日常费用报销表格
  • 客户的赔偿金会计分录
  • 去年的进项发票可以抵今年的吗
  • java守护线程和普通线程jvm区别
  • 高铁票可以抵扣的进项
  • 赠送代金券账务怎么处理
  • 电梯改造税率
  • 发放工资社保的账务处理
  • 软件开发的账务处理
  • 收到销售折让的负数发票怎么做会计分录
  • 收到招聘费发票怎么做账
  • 工业用电交税怎么算
  • 售后回租的实际利率怎么计算
  • 小企业会计准则2023电子版
  • 处置长投其他权益变动要转损益吗
  • 四技合同是什么?
  • 一般纳税人附加税
  • 发票认证完了该怎么取消
  • 营业执照过期多久不能审
  • sqlbean
  • mysql安装包和免安装的区别
  • ubuntu20.04常用软件
  • linux系统文件在哪个目录
  • linux系统故障及解决方法
  • 联想笔记本出厂编号怎么查询
  • windowxp怎么设置密码
  • WARNING: /tmp: File system full, swap space limit exceeded的解决办法
  • media.codec是什么
  • win7系统禁止更新
  • win8系统开机怎么进入桌面
  • jQuery.trim() 函数及trim()用法详解
  • 细说javascript
  • android网络开发技术答案形考任务五
  • jquery表格隔行变色代码
  • 每天一篇文章锻炼口才的文章
  • python 元类的作用
  • python怎么定义
  • 货车可申请停保吗
  • 辽宁地方税务局招聘
  • 电子专用发票怎么申请领用
  • 房产税税源编号
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设