vue子组件向父组件传值的三种方式_vue子组件修改父组件值

vue子组件向父组件传值的三种方式_vue子组件修改父组件值如需了解老子怎么控制儿子的,传送门:子组件child.vue<template><div><button@click=”$emit(’emit’,’方式1:传参给父组件第1个参数’,’方式1:传参给父组件第2个参数’,’…’)”>方式1:通过emit传参给父组件(推荐此方式)</button><button@click=”emit(‘方式2:传参给父组件第1个参数’,’方式2…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

 如需了解老子怎么控制儿子的,传送门:https://s-z-q.blog.csdn.net/article/details/119922715 

子组件child.vue 

<template>
  <ul>
    <li> <button @click=" $emit( 'emit', '方式1:传参给父组件第1个参数', '方式1:传参给父组件第2个参数', '...' ) " > 方式1:用$emit传参给父组件(推荐此方式) </button> </li> <br /> 
    <li> <button @click=" emit( '方式2:传参给父组件第1个参数', '方式2:传参给父组件第2个参数', '...' ) " > 方式2:用props属性传进来的函数(方法Function)传递值给父组件 </button> </li> <br /> 
    <li> <button @click=" $parent.emit( '方式3:传参给父组件第1个参数', '方式3:传参给父组件第2个参数', '...' ) " > 方式3:用$parent.functionName调用父组件的方法(不推荐,需要依赖父组件初始化完毕该方法) </button> </li> <br /> 
    <li> <button @click=" inject_emit( '方式4:传参给父组件第1个参数', '方式4:传参给父组件第2个参数', '...' ) " > 方式4:用inject关联父组件provide的方法(这种方式比较生僻,子孙组件都可以直接调用,适用于层级较深的组件关系) </button> </li> <br /> 
    <li> <button @click=" window_emit( '方式5:传参给父组件第1个参数', '方式5:传参给父组件第2个参数', '...' ) " > 方式5:用window的全局方法(此方式属于直男模式,呵呵~) </button> </li> <br /> 
  </ul>
</template> 
<script>
export default {
  inject: ["inject_emit"], //注入方法(子孙组件均可直接调用)
  props: ["emit"], //传入方法
  methods: {
      window_emit(v1,v2,v3){
            window.emit(v1,v2,v3)
      }
  }
};
</script>

父组件father.vue

<template>
  <div>
    <child @emit="emit" :emit="emit"></child>
  </div>
</template>
<script>
import child from "./child.vue";
export default {
  components: {
    child,
  },
  created() {
    window.emit = this.emit;//声明全局方法(直男模式)
  },
  provide() {    
    return {
      inject_emit: this.emit,//在这里对外提供方法,在子孙组件中都可以调用
    };
  },
  methods: {
    emit(v1, v2, v3) {
      alert(`${v1}\n${v2}\n${v3}`); //弹出子组件的传参
    },
  },
};
</script>

vue子组件向父组件传值的三种方式_vue子组件修改父组件值

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186798.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 文本相似度计算_文本相似度分析算法

    文本相似度计算_文本相似度分析算法这篇文档简单介绍一下Simhash算法一.Simhash计算文档相似度的算法,比如用在搜索引擎的爬虫系统中,收录重复的网页是毫无意义的,只会造成存储和计算资源的浪费。有时候我们需要处理类似的文档,比如新闻,很多不同新闻网的新闻内容十分相近,标题略有相似。如此问题,便可以应用Simhash文档相似度算法,查看两篇文档相似程度,删去相似度高的web文档。二.

    2022年10月1日
    4
  • 数据仓库 数据集市_实时数仓应用场景

    数据仓库 数据集市_实时数仓应用场景#实时数仓项目-数据采集与ODS层配置canal实时采集mysql数据一、mysql开启binlog二、安装配置canal采集数据到kafka三、启动kafka消费者验证ODS层数据处理导入hbase一、flink采集kafka数据配置canal实时采集mysql数据一、mysql开启binlog修改mysql的配置文件(linux:/etc/my.cnf,Windows:\my.ini)log-bin=mysql-bin#开期binlogbinlog-format=ROW#选择ROW

    2022年9月27日
    2
  • 老板总是忽视我的辛苦,怎么办? 3点实用建议送给你

    老板总是忽视我的辛苦,怎么办? 3点实用建议送给你

    2022年2月18日
    78
  • django常用命令_django怎么用

    django常用命令_django怎么用前言我们掌握了如何在命令提示符或PyCharm下创建Django项目和项目应用,无论是创建项目还是创建项目应用,都需要输入相关的指令才能得以实现,这些都是Django内置的操作指令。在PyChar

    2022年7月30日
    8
  • GPS模块开发详解(转)

    一、了解硬件我使用的GPS模块型号为UBX-M8030参看:UBX-M8030系列参看:UBX-M8030datasheet1、查看一下它的特性:多用途GNSS芯片,提供三种产品等级最多可并发接收3个GNSS(GPS、伽利略、GLONASS、北斗)行业领先的-167dBm导航灵敏度业界最低电流消耗在城市峡谷中具有绝佳的定位精度安全性和完整性保护支持所有…

    2022年4月4日
    31
  • 微服务网关kong实战[通俗易懂]

    微服务网关kong实战[通俗易懂]   当前互联网特别是移动互联网,设备与平台之间的交互的基础是服务API接口。以API驱动的开发是团队之间最常用的协作方式,而作为交互的基石,API的准确性,完整性和及时性是影响开发效率的关键。在生产环境中,创建、发布、维护、监控和保护任意规模的API,接收和处理成千上万个并发API的调用,管理流量、授权和访问控制、监控以及API版本也是采用微服务架构所必须解决的问题。解决上述…

    2022年6月26日
    57

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号