2016-05-04 3 views
4

Когда я должен построить сложной страницу со многими функциональными возможностями, я часто в конечном итоге с дизайном, который предусматривает в сложной странице как состав серии простых компонентов, которая может быть составной частью еще более простых компонентов (другими словами, я говорю о более чем одном уровне вложенных компонентов).Angular2 дизайна - вложенность компонентов и производительности рисков

Такие более простые компоненты не созданы для повторного использования (другой страницы не будет использоваться), а как попытка сделать код более понятным и понятным (что все равно хорошо).

В любом случае, вопрос, который у меня есть, заключается в том, может ли быть спроектирована страница, построенная с помощью композиции и разного уровня гнездования, которая может серьезно повлиять на производительность, и поэтому ее необходимо тщательно отслеживать.

Я считаю, что вопрос может показаться немного расплывчатым, но то, что я в основном задаю, заключается в том, является ли вложенность компонентов серьезным риском для производительности приложений Angular2. Я говорю о разумном количестве уровней вложенности (скажем, 3 - 4 уровня) и страницах, функциональное богатство которых не может быть уменьшено (т. Е. То, что не вложено, должно быть на верхней странице).

Надеюсь, этот вопрос не кажется слишком наивным.

Заранее благодарен

ответ

5

Отсутствует. Я думаю, что вложенность может улучшить производительность. Особенно, если вы точно настраиваете обнаружение изменений, например, используя ChangeDetectionStategy.OnPush. Таким образом вы ограничиваете область, в которой Angular должен запускать обнаружение изменений до тех пор, пока вы явно не укажете Angular для проверки.

шаг сборки, который будет предоставлен (или уже есть) с помощью углового или на стороне сервера визуализации с помощью Angular2 Univeral, также позволит снизить начальную нагрузку Угловая функция должна выполняться при загрузке страницы, а DOM создается путем замены отражающего кода для привязок и другого материала сгенерированным кодом.

+0

спасибо за ответ, измените определение stategy - очень хороший совет – Picci

+0

Я обновил свой ответ. –

Смежные вопросы