MapStateToProps 和 useSelector 都使用类似的回调函数store => store.group
是否可以安全地改变这些值,例如在 MapStateToProps 中像这样:
const mapStateToProps = store => {
const { group, level } = store;
let { group } = store;
if (level > 50) {
group = `${group}-admin`;
}
return { group };
};
或在使用选择器:
const group = useSelector(store => {
const { group, level } = store;
let { group } = store;
if (level > 50) {
group = `${group}-admin`;
}
return { group };
});
而使用 useSelector 实际上也可以像这样在组件内部完成:
let [group, level] = useSelector(store => [store.group, store.level);
if (level > 50) {
group = `${group}-admin`;
}
...
我的同事做了这样的事情,我不确定你是否应该let
在那里使用。我只是感兴趣,如果这是可以接受的方式来处理这个,或者如果这会导致问题?我不需要其他解决方案。我知道如何使用 using 来做到这一点const
。