У меня есть компонент, который с этим JSON:Удаление подкомпонента из компонента React?
{
"id": 138,
"created_at": "2016-08-29T08:20:28+02:00",
"updated_at": "2016-08-29T08:20:28+02:00",
"title": "Some title.",
"description": "",
"employee": {
"id": 500,
"name": "Name,
"title": "Code Monkey,
"geo_code": "UK",
"image": ""
},
"assigned_employee": {
"id": 34,
"name": "Nicolai",
"title": "Developer",
"geo_code": "uk",
"image": ""
},
"status": {
"id": 1,
"name": "Pending",
"color": "#FAFAFA"
},
"priority": {
"id": 1,
"name": "Low",
"color": "#F56954",
"rank": 0
},
"taskables": [
{
"id": 1,
"created_at": "2016-08-22T17:07:33+02:00",
"type": "partner",
"partner": {
"id": 652,
"created_at": "2012-07-31T09:43:43+02:00",
"name": "Beierholm",
"geo_code": "UK",
"city": "London",
}
},
{
"id": 2,
"created_at": "2016-08-22T17:09:07+02:00",
"type": "lead",
"lead": {
"id": 21211,
"created_at": "2016-08-16T13:08:21+02:00",
"name": "LeadName",
"geo_code": "UK",
"city": "London",
}
}
]
},
у меня есть событие, чтобы иметь возможность удалить taskables из (родительского компонента) DOM, внутри редукторов у меня есть это, когда карта текущих элементов в штат. Но элемент не удаляется.
if(task.id === action.task_id){
if(task.taskables.length > 0) {
task.taskables.filter(function(taskable){
return taskable.id !== action.taskable_id;
})
}
}
Любые идеи?
Проблема с этим является то, что удаляется весь компонент вместо удаления ребенка только, и когда * taskable * is null не получится – jycr753
Может быть. Я не вижу, как мы можем сказать, не видя больше кода. Но просто для того, чтобы быть ясным: это похоже на то, что код, приведенный в моем ответе, мне кажется практически недействительным. Он вызывает функцию в массиве, который не меняет сам массив, и отбрасывает результат. – GreenAsJade
Просто проверьте, поняли ли вы то, что я делал в своем ответе. Я попытался прояснить ситуацию лучше. – GreenAsJade