我有这段代码可以在纯html / javascript中正常工作,但在vuejs中却无法正常工作。我有一个名为myMethod()的函数。 在javascript控制台中进行调试时,我可以像这样访问它:myMethod(“ toto”)。但是在vuejs中,只能通过以下方式访问:$ vm0.myMethod(“ toto”)。
我绝对需要这样访问它:myMethod(“ toto”)。
在vue中有可能吗?
谢谢。
答案 0 :(得分:0)
对于非父子关系,则与此关系相同。调用一个方法,显然是从任何其他组件调用一个组件的任何方法。只需将$on
函数添加到$root
实例,然后调用其他任何访问$root
并调用$emit
函数的组件即可。
在第一个组件上
.... mounted() { this.$root.$on('component1', () => { // your code goes here this.c1method() } }
,然后在第二个组件中调用$emit
中的$root
函数
... c2method: function(){ this.$root.$emit('component1') //like this },
它的作用更像一个套接字。在这里参考