我是否使用此功能改变redux状态?
exec [dbo].[Create_Part] @AssessmentPartId out
我想创建一个结构来保存与应用程序不同部分相关的数据。
答案 0 :(得分:1)
是的,.push()
语句 在以后的调用中发生变异。在第一次调用中,数组是新创建的,因此它不具备变异的条件。在稍后的调用中,您已创建了一个新对象,但复制了现有的数组引用,因此.push()
会改变现有数组。
答案 1 :(得分:0)
是。请参阅markerikson的回答。请记住,您可以使用扩展运算符来避免这种情况。
const INITIAL_STATE = {
guid: []
}
function addDefinition(state = INITIAL_STATE, payload) {
return {...state, guid: [...state.guid, payload]};
}
此外,您可以避免使用初始状态的if语句。