我正在尝试重构一些代码并将一些代码移动到 mixin。但我得到了不同的行为。我希望在组件的所有实例之间共享一个对象。所以我写了类似下面的东西
<script>
export default {
registryManager: new RegistryManager()
}
</script>
在这些情况下,我通过this.$options.registeryManager
. 现在我已将此代码移至 mixin。
米信
export default {
registryManager: new RegistryManager()
}
零件
<script>
import registryManager from './mixins/registryManager';
export default {
mixins: [registryManager]
}
</script>
假设您有 2 个组件 A、B。之前,组件 A 的所有实例都有一个 registryManager,组件 B 的所有实例都有一个单独的 registryManger。使用 mixin,组件 A 和组件 B 的所有实例都共享一个注册表管理器,因为无论有多少组件使用 mixin,都只会创建一个 mixin 实例有没有办法创建一个 mixin 实例每个组件以获得更早的行为?