从重写的实现中调用原始VueJS mixin方法

问题描述

好的,我有一个网页,其中包含一些供用户使用的步骤,以及一个处理这些步骤的属性和逻辑(如当前/下一个步骤值)的mixin,并进行检查以使用户能够从每个步骤前进到下一个步骤等。

现在我必须添加功能,仅在特定步骤之后才能执行,因此我想做的是调用原始的mixin方法,该方法用户每次进行下一步添加时都会调用功能

更清楚地说,(显然)在Web应用程序的许多页面中都使用了mixin,因此我想在扩展该组件的组件中覆盖罪魁祸首mixin方法调用原始的mixin方法以重用其逻辑,然后调用其他功能的新方法

有可能吗?

解决方法

确定可以,尝试一下:

// MyMixin.js
export default {
  methods: {
    myMethod() {
      //...
    }
  }
}

// Component.vue
<script>
import MyMixin from 'path-to-mixins/MyMixin'

export default {
  //...
  mixins: [MyMixin],methods: {
    // there is overrinding you mixin method called myMethod
    myMethod() {
      // then some logic before to use your mixin method
      // and call your mixin method as below
      MyMixin.methods.myMethod()
    }
  }
  //...
}
</script>