Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Methods 在vuejs中将方法从父组件传递到子组件_Methods_Vue.js - Fatal编程技术网

Methods 在vuejs中将方法从父组件传递到子组件

Methods 在vuejs中将方法从父组件传递到子组件,methods,vue.js,Methods,Vue.js,有人能帮我在vue.js中将方法从父组件传递给子组件吗?我一直试图通过将该方法作为一个道具传入来实现它 我的父组件代码段: methods: { test: function () { console.log('from test method') } } <template> <child-component test="test"><child-component> </template> 有人

有人能帮我在vue.js中将方法从父组件传递给子组件吗?我一直试图通过将该方法作为一个道具传入来实现它

我的父组件代码段:

methods: { 

    test: function () {
        console.log('from test method')
    }

}

<template>
    <child-component test="test"><child-component>
</template>
有人能帮忙吗


提前谢谢

您正在尝试按所述的文字传递函数。您最终得到的
test
prop是字符串。。。您应该使用
指示动态绑定,如下所示:


“< /代码> 

确认工作,即使您可能想考虑MIXIN。是的,完全。我的意思是,如果你只是为了实现代码重用而传递它,那么就使用mixin。这取决于你想要实现什么:如果你只想使用注入函数的一个变体,mixin也可以解决你的问题,但是如果你想根据父代使用不同的变体,mixin将无法工作。有趣的是,如果prop值是一个函数,它将被传递给客户端,而如果prop值是一个包含带有函数的字段的对象,则相应的字段将从进入子组件的prop值中剥离出来(它是原始值的克隆)。
created: {
    this.test() //returns test is not a function
},

props: ['test']