因此,我相信标题会介绍我的问题。鉴于您要在要使用mapGetters的每个组件中引入新的依赖关系,因此这会给程序包增加膨胀。
这也意味着您的组件现在已专门绑定到Vue,如果要将组件移植到其他框架(如React)上,这还需要解决。
考虑以下两个计算的属性列表:
import { mapGetters} from 'vuex'
computed: {
...mapGetters({
active:'interface/active',
mode:'interface/mode',
views:'interface/views',
}),
}
Run Code Online (Sandbox Code Playgroud)
与
computed: {
active:() { return this.$store.getters['interface/active'],
mode:{ return this.$store.getters['interface/mode']},
views:{ return this.$store.getters['interface/views']},
}
Run Code Online (Sandbox Code Playgroud)
当然,后者有点冗长,但没有什么太糟糕的了。在任何一种情况下,您仍然都以相同的方式获得所有的吸气剂数据。这样做似乎完全是不必要的,因为节省几个字符的好处很小。
前一个示例重207B(201个字符)
而后面的示例权重为207B(201个字符)。
对我来说,这意味着节省类型,几乎没有。但是,我确实承认,前者更具可读性,可移植性,并且最终易于维护,因为您的相关数据全部集中在一个位置。