Это как пример моего состояния выглядит:Заменить элемент массива с другой без мутирует состояния
const INITIAL_STATE = {
contents: [ {}, {}, {}, etc.. ],
meta: {}
}
мне нужно быть в состоянии и каким-то образом заменить элемент внутри содержимого массива, зная его индекс, я попытался:
return {
...state,
contents: [
...state.contents[action.meta.index],
{
content_type: 7,
content_body: {
album_artwork_url: action.payload.data.album.images[1].url,
preview_url: action.payload.data.preview_url,
title: action.payload.data.name,
subtitle: action.payload.data.artists[0].name,
spotify_link: action.payload.data.external_urls.spotify
}
}
]
}
где action.meta.index
является индексом элемента массива, я хочу, чтобы заменить другое содержание объект, но я считаю, что это просто заменяет весь массив этого одного объекта я передаю. Я также думал об использовании .splice()
, но это просто изменило бы массив?
Кроме того, взглянуть на РЕАКТ неизменности хелперов - https://facebook.github.io/ react/docs/update.html Они не так просты в использовании, как они выглядят, и действительно упрощают чтение кода. – Andreyco