Size: a a a

Angular - русскоговорящее сообщество

2021 February 09

OS

Oleg Safonov in Angular - русскоговорящее сообщество
Sanek Semenov
всем добрый день!
В html через *NgFor в <select> получаю весь массив из компонента.
Как я могу вместо выпадающего огромного списка осуществить поиск и выбрать подходящее значение ?
отфильтруйте список в компоненте
источник

NS

Nikolay Smagin in Angular - русскоговорящее сообщество
Не со всех кнопок а только с некоторых
источник

SS

Sanek Semenov in Angular - русскоговорящее сообщество
Oleg Safonov
отфильтруйте список в компоненте
т.е. мне в компоненте сделать метод, который принимает какойто string и возвращает отфильтрованный массив ?
источник

OS

Oleg Safonov in Angular - русскоговорящее сообщество
Sanek Semenov
т.е. мне в компоненте сделать метод, который принимает какойто string и возвращает отфильтрованный массив ?
Да, можно слить два потока (один с элементами, другой с фильтром) и возвращать observable

А в шаблоне уже его итерировать с помощью async
источник

SS

Sanek Semenov in Angular - русскоговорящее сообщество
Oleg Safonov
Да, можно слить два потока (один с элементами, другой с фильтром) и возвращать observable

А в шаблоне уже его итерировать с помощью async
попробую, спасибо большое )
источник

SS

Sanek Semenov in Angular - русскоговорящее сообщество
Oleg Safonov
Да, можно слить два потока (один с элементами, другой с фильтром) и возвращать observable

А в шаблоне уже его итерировать с помощью async
onSubmit(value) {
              this.filtered = this.clients.filter(clients => clients.id === value.id )
          }

Я делаю фильтр по массиву объектов, все отрабатывает отлично, но я получаю результат только по тем id, которые точно соответствуют введенному.

Как сделать поиск по подходящему ? Например, я ввожу 2 и мне в результате массив с объектами, у которых id содержат 2. По типу sql'ного like
источник

AC

Alexey C in Angular - русскоговорящее сообщество
Переслано от Alexey C
Hello, guys. Can you help me please with this? I keep receiving error because of keyvalue pipe that I use, needless to say, i have imported Common Module, so I dont know how to fix it, please help
источник

OS

Oleg Safonov in Angular - русскоговорящее сообщество
Sanek Semenov
onSubmit(value) {
              this.filtered = this.clients.filter(clients => clients.id === value.id )
          }

Я делаю фильтр по массиву объектов, все отрабатывает отлично, но я получаю результат только по тем id, которые точно соответствуют введенному.

Как сделать поиск по подходящему ? Например, я ввожу 2 и мне в результате массив с объектами, у которых id содержат 2. По типу sql'ного like
Я понятия не имею, что за client и что за value)
источник

OS

Oleg Safonov in Angular - русскоговорящее сообщество
Sanek Semenov
onSubmit(value) {
              this.filtered = this.clients.filter(clients => clients.id === value.id )
          }

Я делаю фильтр по массиву объектов, все отрабатывает отлично, но я получаю результат только по тем id, которые точно соответствуют введенному.

Как сделать поиск по подходящему ? Например, я ввожу 2 и мне в результате массив с объектами, у которых id содержат 2. По типу sql'ного like
Sql like не работает так по цифрам, насколько я знаю


Или у Вас текст там?
источник

YS

Yaroslav Solonnikov in Angular - русскоговорящее сообщество
Гайз, как можно оптимизировать, и можно ли, ситуацию, когда представим, что у меня массив карточек из 20 шт, и у них нет имеджей - я делаю запрос на гугл кастом имедж серч из самого компонента карточки, в данном случае 20 раз и сечу ресалт в имдж. Качество респонса ок, но меня смущает кол-во запросов.
источник

SS

Sanek Semenov in Angular - русскоговорящее сообщество
суть в строчке id === value.id
Мне выдает массив объектов, у которых свойство id точно совпадает с введеным value.id,
а я хотел бы получить массив объектов у которых свойство id содержит в себе цифру (или число) введенное в value
источник

J

Joel in Angular - русскоговорящее сообщество
Yaroslav Solonnikov
Гайз, как можно оптимизировать, и можно ли, ситуацию, когда представим, что у меня массив карточек из 20 шт, и у них нет имеджей - я делаю запрос на гугл кастом имедж серч из самого компонента карточки, в данном случае 20 раз и сечу ресалт в имдж. Качество респонса ок, но меня смущает кол-во запросов.
А как по другому... 20 карточек, 20 запросов,
источник

YS

Yaroslav Solonnikov in Angular - русскоговорящее сообщество
Походу да, это если бы апи мог принимать массив и отдавать массив. Окей, спс
источник

VH

Vadzim Halchynski in Angular - русскоговорящее сообщество
Yaroslav Solonnikov
Походу да, это если бы апи мог принимать массив и отдавать массив. Окей, спс
В таком случае долго ждать нужно будет. Можешь сделать подгрузку по скролу, если не все карточки на экране
источник

YS

Yaroslav Solonnikov in Angular - русскоговорящее сообщество
Да, да, инфинити скролл есть
источник

J

John in Angular - русскоговорящее сообщество
Yaroslav Solonnikov
Гайз, как можно оптимизировать, и можно ли, ситуацию, когда представим, что у меня массив карточек из 20 шт, и у них нет имеджей - я делаю запрос на гугл кастом имедж серч из самого компонента карточки, в данном случае 20 раз и сечу ресалт в имдж. Качество респонса ок, но меня смущает кол-во запросов.
сделай некую прослойку bff на том же nestjs, и кидай туда масив а он уже будет в цикле делать запросы и класть себе в кеш, первый раз прогреешь кеш, второй раз уже будет прилетать из него не делая ни каких запросов
источник

OL

Oleg Livcha in Angular - русскоговорящее сообщество
Alexey C
Переслано от Alexey C
Hello, guys. Can you help me please with this? I keep receiving error because of keyvalue pipe that I use, needless to say, i have imported Common Module, so I dont know how to fix it, please help
Which angular version do you running?
источник

AC

Alexey C in Angular - русскоговорящее сообщество
Oleg Livcha
Which angular version do you running?
11.0.3
источник

YS

Yaroslav Solonnikov in Angular - русскоговорящее сообщество
John
сделай некую прослойку bff на том же nestjs, и кидай туда масив а он уже будет в цикле делать запросы и класть себе в кеш, первый раз прогреешь кеш, второй раз уже будет прилетать из него не делая ни каких запросов
А чем отличается от кеширования в интерспторе?
источник

J

John in Angular - русскоговорящее сообщество
ну так у тебя будет кеш всегда а так пока живет spa
источник