Vue中子组件怎么向父组件传参

  • 背景:Vue+ES6,子组件在父组件create后调用,并且事件触发onclick已经被封装在底层组件(子组件的子组件)

  • 问题:在父组件中无事件绑定的情形下,子组件怎么向父组件传参?

阅读 6.5k
8 个回答
  1. EventBus (不太符合题目要求的无事件绑定的情形)

  2. Vuex

子组件使用v-on监听一个事件,然后触发的时候,把事件发出去,就是$emit,然后父组件中同样使用v-on监听你发出去的事件,然后执行你父组件定义的事件。

楼上的已经说明白了,我是来补个粟子的
child.vue

<template>
    <div id="test">向父传递</div>
</template>
<script>
    export default {
        methods: {
            $('#test').click(()=>{
                this.$emit('data', '这是我要传的参数');
            })
        }
    }
</script>

parent.vue

<template>
    <child @data="fnSS"></child>
</template>
<script>
    import child from './child';
    export default {
        components: {
            tagInput
        }
        methods: {
            fnSS(value) {
                alert(value);
            },
        }
    }
</script>

子组件this.$emit("event",data)

父组件@event

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题