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
Vue.js vue当前组件中的访问方法_Vue.js_Vuejs2_Vue Component_Vue Events - Fatal编程技术网

Vue.js vue当前组件中的访问方法

Vue.js vue当前组件中的访问方法,vue.js,vuejs2,vue-component,vue-events,Vue.js,Vuejs2,Vue Component,Vue Events,任何人都可以指导或建议如何解决以下问题。 用例:尝试实现通知组件 场景:我试图在Vue中触发事件时调用方法或更改数据的状态。 我已经在挂载函数上定义了事件侦听器,并尝试访问其中一个方法 基本上,事件内警报函数正在被触发,其中as-alert-in-event方法不会被触发,即使使用事件内函数也不会执行任何数据操作 我在哪里失踪?在事件侦听器中更改状态是否不正确? 基本上,我正在尝试实现通知功能,它会在几秒钟后自动消失 感谢您的帮助 谢谢, 我相信你的问题是拼写错误,而不是 method: {}

任何人都可以指导或建议如何解决以下问题。 用例:尝试实现通知组件 场景:我试图在Vue中触发事件时调用方法或更改数据的状态。 我已经在挂载函数上定义了事件侦听器,并尝试访问其中一个方法

基本上,事件内警报函数正在被触发,其中as-alert-in-event方法不会被触发,即使使用事件内函数也不会执行任何数据操作

我在哪里失踪?在事件侦听器中更改状态是否不正确? 基本上,我正在尝试实现通知功能,它会在几秒钟后自动消失

感谢您的帮助

谢谢,
我相信你的问题是拼写错误,而不是

method: {}
,使用
方法:{}
例如:

Error.
method: {
test: function () {
alert('Inside Method');
}

correct.
methods: {
test: function () {
alert('inside method);
}
}
我知道这和这个问题没有多大关系,但是在使用事件巴士时要小心,就好像你有一个演讲者,在人群中大喊一个人的名字。 例子: eventbus说汉密尔顿在10000人的人群中。
在这群人中间你能有多少Hamiltons?使用更具体的方法,例如父子通信,避免使用事件总线。

还有另一个原因,
这个内部回调函数不是Vue组件。您可以分配
var self=this
并在回调中使用,或者使用arrow函数

mounted: function () {
  var self = this
  EventBus.$on('show', function () {
    self.test()
    self.show = true
  })
},
methods: {
  test () {
    console.log('Inside methods')
  }
}

谢谢你,它起作用了:),但我只是想知道为什么“这个”在EventhandlerHi Gabriel里面不起作用,是的,我的错。愚蠢的拼写错误:(.是的,我同意您对事件总线(一种全局事件总线)的看法,如果没有正确记录,可能会导致一些可维护性问题。幸运的是,我使用的是本地事件处理程序。:)