问题描述
好的,我有一个网页,其中包含一些供用户使用的步骤,以及一个处理这些步骤的属性和逻辑(如当前/下一个步骤值)的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>