gpt4 book ai didi

javascript - 具有多个模块的 vuex 命名空间 mapState

转载 作者:数据小太阳 更新时间:2023-10-29 04:00:11 25 4
gpt4 key购买 nike

我一定是遗漏了什么。如何将 vuex mapState 与多个模块一起使用?

据了解,除了将对象作为参数传递外,命名空间 mapState 还可以采用两个参数:命名空间和表示模块成员的对象名称数组。像这样

// an imcomplete vue
export default {
computed: mapState('user', ['addresses', 'creditCards'])
};

但是如果我想将来自第二个命名空间的对象添加到计算中怎么办?例如像这样的 vendor :

mapState('vendor', ['products', 'ratings']) 

目前我正在像这样合并两个 mapState:

let userMapState = mapState('user', ['addresses', 'creditCards']); 
let vendorMapState = mapState ('vendor', ['products', 'ratings']);
let mergedMapStates = Object.assign({}, userMapState, vendorMapState);

然后:

// an imcomplete vue
export default {
computed: mergedMapStates
};

它有效,但它不是正确的方法。或者是?

最佳答案

使用 spread operator :

computed: {
...mapState('user', ['addresses', 'creditCards']),
...mapState('vendor', ['products', 'ratings'])
}

关于javascript - 具有多个模块的 vuex 命名空间 mapState,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45594244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com