#javascript #arrays #reactjs #object
#javascript #массивы #reactjs #объект
Вопрос:
В приложении react я пытаюсь получить одну строку из массива, используя id, но это не работает.
const result = [
{id: 0, important: false, name: "Shruthi R", phone: "9834233433", email: "shruthi@gmail.com", work: "NicheSoft", city: "Mysore"},
{id: 1, important: false, name: "Shivay", phone: "9442233166", email: "shivay@yopmail.com", work: "MicroSoft", city: "Mumbai"},
{id: 2, important: false, name: "Yash Sindhya", phone: "7455454354", email: "yash@yopmail.com", work: "AirVoice", city: "Pune"},
{id: 3, important: false, name: "Rajat", phone: "8456546555", email: "rajat@gmail.com", work: "Airtel", city: "Delhi"},
{id: 5, important: false, name: "Surya S", phone: "9956546546", email: "surya@gmail.com", work: "Vodafone", city: "Chennai"},
{id: 6, important: false, name: "Paridhi", phone: "8856544422", email: "paridhi@gmail.com", work: "MicroTech", city: "Lucknow"},
];
Моя onEditClick
функция, как показано ниже, здесь я хочу, чтобы одна (совпадающая) строка из result
id
onEditClick = (event) => {
console.log(event.target.id);
}
Комментарии:
1. правильно ли я понимаю, что вы хотите получить объект по id?
2. ДА. Вы правы.
Ответ №1:
При условии event.target.id
, что содержит соответствующий идентификатор, вы можете использовать метод array find()
:
onEditClick = (event) => {
const clickedResult = result.find(({id})=>id===parseInt(event.target.id));
console.log('clickedResult', clickedResult);
}
Комментарии:
1. Когда я конвертирую
event.target.id
вparseInt(event.target.id)
then, это сработает..