J'essaie d'ajouter une nouvelle valeur clé objet paire un par un à l'intérieur items
comme indiqué ci-dessous:Comment ajouter en profondeur un nouvel objet paire de valeur clé à l'intérieur de la carte Js Immuable en redux ..?
{
appElements: {
layers: {
layer_1: {
background: {
width: '100px',
height: '100px',
bgColor: '#aaaaaa',
bgImage: 'http:bgimage1.png'
},
items: {
yrgroih9: {
width: '100px',
x: '200px'
},
qhy0dukj: {
width: '100px',
x: '200px'
},
'7lw2nvma': {
width: '100px',
x: '200px'
}
}
}
}
}
}
code utilisé pour ajouter un nouvel objet à l'intérieur items
:
case 'ADD_OBJECT':
return state.setIn(["appElements","layers","layer_1","items"],{
[action.objData.item_id]: {
"width": action.objData.width,
"x": action.objData.x
},
});
Le premier objet d'entrée d'essayer d'ajouter à l'intérieur items
fonctionne parfaitement:
yrgroih9: {
width: '100px',
x: '200px'
}
stocker des données de Redux disposées (de chrome Redux devtools):
Mais en ajoutant un autre objet va supprimer la première entrée et ajoutez l'entrée en vigueur.
Également essayé updateIn
fonction, son ne fonctionne pas. Comment ajouter des objets sans enlever l'ancien.
Y at-il des fautes de frappe dans votre objet? 'layer_1' et' items' devraient être un tableau. Pouvez-vous mettre à jour la structure d'objet correcte? –
Il n'y a pas d'index basé sur la matrice .. Seules les paires de valeurs clés d'objet et c'est la structure d'objet correct j'ai ajouté ... J'ai ajouté des objets magasin Redux comme fichier image maintenant pour mieux comprendre .. Aidez-moi .. – ArunValaven
l'erreur entre, vous n'avez pas 'qhy0dukj' ou' 7lw2nvma' car ils sont ignorés. 'items' a pris' yrgroih9' comme clé, et il n'a qu'une seule clé car c'est un hash. –