Vue JS如何从另一个方法在同一组件中定义调用方法

时间:2019-12-12 10:44:07

标签: javascript vue.js methods

我有一个vue模块,其中定义了一些方法,method1,method2,method3 ecc,

methods: {
          method1 : async function() { ... },
          method2 :  function() { ... },
          method3 :  function() { ... },
          showMessage : function(message) { ... }
}

我在方法列表的末尾添加了showMessage函数:

非常琐碎:

showMessage: function(message){
           alert(message);
}

但是问题是我无法从模块的其他方法中调用,如果我尝试从例如method3中调用,我会使用this.showMessage(“ somethings”)或showMessage(“ somethings”),但是我有错误:

未捕获的ReferenceError:showMessage未定义

1 个答案:

答案 0 :(得分:-1)

如果从定义它的组件中调用showMessage,则不会发生此问题。但是,如果要从其他组件中调用它,则首先需要某种方法才能在该组件中具有该方法。避免重复之间在组件之间共享相同代码的最佳方法是创建一个混合。

您可以在这里(https://vuejs.org/v2/guide/mixins.html)阅读有关内容