【问题标题】:Call original VueJS mixin method from overridden implementation从覆盖的实现中调用原始的 VueJS mixin 方法
【发布时间】:2020-12-25 22:46:45
【问题描述】:

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

现在我必须添加一个仅在某个步骤之后才能执行的新功能,所以我想做的是调用每次用户进入下一步添加时调用的原始 mixin 方法这个功能。

为了更清楚,mixin(显然)在 webapp 的许多页面中使用,所以我想覆盖扩展它的组件中的罪魁祸首 mixin 方法,调用原始 mixin 方法以重用其逻辑,然后调用新功能的其他方法。

有可能吗?

【问题讨论】:

    标签: vue.js inheritance mixins


    【解决方案1】:

    当然可以,试试吧:

    // 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>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-25
      • 2014-11-20
      • 1970-01-01
      • 2011-11-03
      • 2021-04-30
      相关资源
      最近更新 更多