J'ai un problème avec la mise à jour des données redux immuables et très imbriquées. Voici un exemple de ma structure de données et ce que je veux changer. Si quelqu'un pouvait me montrer le schéma d'accès à cette mise à jour en utilisant ES6 et l'opérateur de propagation je serais reconnaissant. Tout mon état est un objet avec des projets (paires clé/valeur - ici un exemple d'un seul projet) qui sont des objets avec sa propre clé (et les clés sont aussi des id), des tableaux de procédures et des tâches :Redux mise à jour des données immuables imbriquées
{ 1503658959473:
{ projectName: "Golden Gate",
projectLocation": "San Francisco",
start:"22/09/1937",
id:1503658959473,
procedures:[
{ title: "Procedure No. 1",
tasks:[
{name: "task1", isDone: false},
{name: "task2", isDone: false},
{name: "task3", isDone: false}
]
}
]
}
}
Ce que je suis prêt à faire est de mettre à jour une propriété 'isDone' d'une seule tâche à 'true'. C'est une sorte de basculer les tâches. Comment puis-je retourner cet état avec cette information mise à jour?
Le créateur d'action de transmettre cette information au réducteur:
export function toggleTask(activeProject, task, taskIndex) {
return {
type: TOGGLE_TASK,
payload: {
activeProject,
task,
taskIndex
}
};
}