Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Getter不是&x27;属性更改时正在更新_Javascript_Redux_Ecmascript 6_Redux Toolkit_Immer.js - Fatal编程技术网

Javascript Getter不是&x27;属性更改时正在更新

Javascript Getter不是&x27;属性更改时正在更新,javascript,redux,ecmascript-6,redux-toolkit,immer.js,Javascript,Redux,Ecmascript 6,Redux Toolkit,Immer.js,我有一个在工厂内返回值的getter,但是当redux tookit更改我的值时,getter不会更新。我在没有redux工具包的情况下尝试了它,它工作得很好 在my reducersetBalanceVisibility中,当值isVisible更改时,getter格式化的值信号不会更新 /*Redux*/ 常量初始状态={ 当前:userFactory(), 孤岛加载:false, 错误:错, } const userSlice=createSlice({ 名称:'@user', 初始状态,

我有一个在工厂内返回值的getter,但是当redux tookit更改我的值时,getter不会更新。我在没有redux工具包的情况下尝试了它,它工作得很好

在my reducer
setBalanceVisibility
中,当值
isVisible
更改时,getter
格式化的值信号不会更新

/*Redux*/
常量初始状态={
当前:userFactory(),
孤岛加载:false,
错误:错,
}
const userSlice=createSlice({
名称:'@user',
初始状态,
减速器:{
setBalanceVisibility(州){
state.current.balance.isVisible=!state.current.balance.isVisible
},
},
})
/*工厂*/
导出函数userFactory(对象){
如果(!对象){
返回空
}
const{name,email,accountBalance}=object
返回{
名称
电子邮件,
余额:余额工厂(accountBalance),
}
}
导出函数平衡工厂(对象){
如果(!对象){
返回空
}
常量{value,formattedValue,isVisible}=object
返回{
价值
格式化值,
可见,
获取格式化的ValueSignal(){
如果(this.isVisible){
返回此.formattedValue
}
返回“---”
},
}
}

这是一种处理选择器功能的非常奇怪的方法。它看起来像balanceFactory从一个状态映射到一些属性。当状态发生变化时,您是否将balanceFactory替换为新状态的balanceFactory?如果没有,那么它当然不会响应。但老实说,这太奇怪了,我不明白你在哪里或如何使用它。