• 技术文章 >web前端 >Vue.js

    vue子组件怎么向父组件传值

    青灯夜游青灯夜游2021-07-27 11:29:48原创2241

    vue子组件向父组件传值的方法:1、子组件主动触发事件将数据传递给父组件。2、子组件中绑定ref,且定义一个父组件可直接调用的函数,父组件注册子组件后绑定ref,调用子组件的函数获取数据。

    本教程操作环境:windows7系统、vue2.9.6版,DELL G3电脑。

    一,子组件主动触发事件将数据传递给父组件

    1,在子组件上绑定某个事件以及事件触发的函数

    子组件代码

    <template>
    <div>
    <Tree :data="treeData" show-checkbox ref="treeData"></Tree>
    
    <Button type="success" @click="submit"></Button>
    </div>
      
    </template>

    事件在子组件中触发的函数

          submit(){
            this.$emit('getTreeData',this.$refs.treeData.getCheckedNodes());
          },

    2,在父组件中绑定触发事件

    <AuthTree  @getTreeData='testData'>
    </AuthTree>

    父组件触发函数显示子组件传递的数据

    testData(data){
          console.log("parent");
          console.log(data)
        },

    控制台打印的数据

    在这里插入图片描述

    二,不需要再子组件中触发事件(如点击按钮,create()事件等等)

    这种方式要简单得多,

    1,子组件中绑定ref

    <template>
    <div>
    <Tree :data="treeData" show-checkbox ref="treeData"></Tree>
    </div>
      
    </template>

    然后在子组件中定义一个函数,这个函数是父组件可以直接调用的。函数的返回值定义为我们需要的数据。

    getData(){
            return this.$refs.treeData.getCheckedNodes()
        },

    然后再父组件注册子组件后绑定ref,调用子组件的函数获取数据

    <AuthTree ref="authTree">
              </AuthTree>

    父组件函数调用

    console.log( this.$refs.authTree.getData());

    相关推荐:《vue.js教程

    以上就是vue子组件怎么向父组件传值的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:vue 组件通信
    上一篇:vue怎么引用css 下一篇:Vue的响应式原理是什么?
    线上培训班

    相关文章推荐

    • 深入浅析Vuejs中的key值• vue路由跳转的三种方式是什么• 宝塔部署vue项目时,访问首页正常,但其他页面无法访问404的解决办法• 介绍laravel+vue前后端分离之服务器端配置• 分享一些Vuejs中常用的自定义指令(总结)• 关于electron-vue图片压缩• 深入浅析vue3中的custom renderer特性

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网