Javascript 向redux存储添加键值对
我正在尝试使用redux将键值对添加到我的存储中。然而,我不知道如何做到这一点。简而言之,我正在从firebase检索数据,我想将该数据添加到我的redux存储中,但我必须一次只执行一项。我希望状态对象的结构如下所示:Javascript 向redux存储添加键值对,javascript,firebase,firebase-realtime-database,redux,Javascript,Firebase,Firebase Realtime Database,Redux,我正在尝试使用redux将键值对添加到我的存储中。然而,我不知道如何做到这一点。简而言之,我正在从firebase检索数据,我想将该数据添加到我的redux存储中,但我必须一次只执行一项。我希望状态对象的结构如下所示: reminders - reminder key 1 - reminder title - reminder date 1 - reminder key 2 - reminder title - reminder date 1 等等 但我不知道如何将
reminders
- reminder key 1
- reminder title
- reminder date 1
- reminder key 2
- reminder title
- reminder date 1
等等
但我不知道如何将孩子添加到我的状态。提醒对象
以下是我的行动:
const fetchReminders = (uid) => async dispatch => {
firebaseReminders.child(uid).orderByChild("date").on("value", snapshot => {
snapshot.forEach(function(child) {
console.log(child.val())
dispatch({
type: 'fetchReminders',
value: child.val(),
key: child.key
});
})
});
};
因此,这将为我从数据库中检索到的每个项目分派操作,然后在我的reducer中,我希望使用action.key作为键将该项目添加到状态树中。目前我有
const remindersReducer = (state = initialState, action) => {
switch(action.type) {
case "fetchReminders":
return Object.assign({}, state, {
reminders: action.value
});
default: return state;
}
};
这是不正确的。如何将具有action.key键和action.value值的子节点添加到state.members对象中
let initialState={
提醒:{}
}
常量提醒减速机=(状态=初始状态,操作)=>{
开关(动作类型){
案例“获取提醒”:
返回Object.assign({},state{
提醒:{
…国家提醒,
[action.key]:action.value
}
});
默认:返回状态;
}
};
let state1=提醒减速器(initialState{
键入:“获取提醒”,
键:“提醒键1”,
值:“提醒值1”
});
console.log(state1)
让state2=提醒减速器(state1{
键入:“获取提醒”,
键:“提醒键2”,
值:“提醒值2”
});
console.log(state2)
让state3=提醒减速器(state2{
键入:“获取提醒”,
键:“提醒键3”,
值:“提醒值3”
});
console.log(state3)