小编Yas*_*rKH的帖子

组件内 Mixin 的调用方法(Vuejs)

我无法从组件调用 mixin 方法,出现此错误this.hello is not a function

我可以hello()从 Vue 实例调用,但不能在组件内调用它。

怎么回事?!

<div id='vue-app'>
  <cmp></cmp>
</div>
Run Code Online (Sandbox Code Playgroud)
const mixin = {
  methods: {
    hello() {
      return 'Hello World!';
    }
  },
  created() {
    console.log('Mixin Created!');
  },
};

const cmp = {
  created() {
    console.log('From Cmp:', this.hello());
  },
};

new Vue({
  components: {
    cmp
  },
  el: '#vue-app',
  mixins: [mixin],
  created() {
    console.log('From VM:', this.hello());
  },
});
Run Code Online (Sandbox Code Playgroud)

https://jsfiddle.net/ar464soq/

vue.js vuejs2

3
推荐指数
1
解决办法
3995
查看次数

标签 统计

vue.js ×1

vuejs2 ×1