#angular #ionic-framework #ionic3
#угловатый #ионный каркас #ionic3 #angular #ионный-фреймворк
Вопрос:
У меня есть policy_id в моем приложении и список массивов, в которых несколько policy_no находятся в массиве. Мне нужно показать данные policy_no из массива, который у меня есть.
Я прикрепляю изображение , которое мне нужно , чтобы сопоставить policy_id с plicy_no в массиве и показать только этот результат массива .
this.policy_id = this.navParams.get('y'); // here is policy id
console.log(this.policy_id);
this.policies = this.navParams.get('z'); // here the policies array
console.log(this.policies);
Комментарии:
1. я добавляю изображения данных на первом рисунке, где есть policy_no, мне нужны только данные этого policy_id, как показано на втором изображении
2. перебирайте оба массива.
Ответ №1:
Метод find() возвращает значение в массиве, если элемент в массиве удовлетворяет предоставленной функции тестирования. В противном случае возвращается undefined.
const police_id="abc";
let res = policies.find(x => x.policy_no === police_id);
Ответ №2:
getRelatedPolicies(policy_id, policies) {
return policies.filter(policy => policy.policy_no === policy_id);
}
Комментарии:
1. спасибо за ответ. но у меня есть policy_id (он не получен из массива. его строка) также обновил мой код. итак, я хочу сопоставить policy_id с массивом policies, в котором policy_no находится в массиве.
2. Изменил мой ответ, проверьте сейчас
3. Итак, вы изменили свой код, чтобы он был идентичен коду, который я опубликовал три часа назад?
4. @RemiSture Вы говорите о функции фильтрации MDN? Вы обвиняете меня в этом? И только из-за этого вы отклонили мой ответ? Вместо того, чтобы просто думать о получении числовой репутации, попытайтесь понять, почему мой ответ был принят, хотя вы опубликовали что-то подобное до меня. Все дело в конкретном решении для данной проблемы. Надеюсь, вы поймете 🙂
5. Моя реакция основана на том, что ваш первоначальный ответ примерно на 95% отличался от вашего текущего ответа (который, опять же, как ни странно, в значительной степени идентичен паре других ответов здесь :))
Ответ №3:
Вы можете фильтровать свой массив следующим образом:
const policy_id = 'xxx';
const policies = [{ policy_no: 'xxx'}, { policy_no: 'yyy'}]
console.log(policies.filter((p) => p.policy_no === policy_id));
Комментарии:
1. когда я утешаю yourPolicy, он показывает мне пустой массив. также обновил мой код в вопросе о том, как я получу массив policy_id и policies. Спасибо
2. Обновил мой пример.
3. в консоли просто отображается policy_no . не данные с policy_no. Я добавляю код, подобный этому const policy_id = this.policy_id; const policies = [{ policy_no: this.policy_id}] console.log(политики. filter((политики) => policies.policy_no === policy_id));
4.
policies
предполагается, что это вашpolicies
массив. Мой код — это всего лишь пример кода, иллюстрирующий, что вам нужно сделать. Конечно, было бы намного проще помочь вам, если бы вы опубликовали код вместо изображений кода.