У меня есть вопрос о производительности для Angular 1.x. Есть ли какие-либо преимущества в производительности для использования функциональных выражений по сравнению с фильтрами для получения значений на основе ключей? Поясню на примерах.
В настоящее время у меня есть сложное угловое приложение с рядом фильтров, используемых для получения значений на основе ключа объектов. В моих данных много ссылок на ключ/идентификатор, поэтому я использую фильтр для получения значений поля на основе ключа.
E.g. {{ ID123 | getField:'object':'field'}}
Затем пользовательский фильтр выполнит асинхронный вызов (в БД), чтобы получить имя объекта, которое я укажу на основе ключа (ID123), и вернуть указанное поле (вместо того, чтобы просто показывать ключ).
В настоящее время я занимаюсь некоторой очисткой производительности и много читал о том, как избегать фильтров, поскольку они сильно влияют на производительность. Одна вещь, которую я делаю, это использование одноразовых привязок {{::ID123 | getField:'object':'field'}}
, но в некоторых сценариях я не могу этого сделать (поскольку мне нужно обновить значение).
Затем я смотрел на функциональные выражения вместо пользовательских фильтров, например. {{getField(ID123,'object','field')}}.
Но я не уверен, что это даст какие-либо преимущества в производительности.
Вы можете увидеть мой пример plunker, где я сравниваю их.
https://plnkr.co/edit/hlL2LSOGjq5HsImUyqyu?p=preview
Будут ли какие-либо преимущества в производительности? Также есть ли способ проверить или сравнить разницу между ними?
Спасибо