Как повторно использовать угловые компоненты из разных папок проекта?

У меня есть проект Angular, в котором предыдущие разработчики копировали/вставляли компоненты.

В этом проекте мобильное представление полностью отличается от настольного, за исключением некоторых компонентов и тех компонентов, которые можно было бы использовать повторно, они точно копируются/вставляются разработчиками. И даже файлы '.ts' различных представлений шаблона также копируются/вставляются, и их можно использовать повторно.

Теперь у меня два вопроса

  1. Если я создам общий модуль и повторно использую этот модуль как в настольной, так и в мобильной папке, повлияет ли это на скорость/производительность приложения, поскольку необходимо выполнить более 50 компонентов?
  2. Является ли стандартом копирование/вставка кода, а не повторное использование этих компонентов?

Вы можете получить четкое представление о моем вопросе, увидев прикрепленную ссылку на изображение ниже. https://ibb.co/DgT4rwh


person Rohan Chaudhary    schedule 13.01.2019    source источник
comment
Ответ Виталия Боброва - правильный способ сделать это при повторном использовании модулей и компонентов в проектах. Но из этого снимка экрана видно, что они копируют/вставляют внутри одного и того же проекта. Вы всегда должны объединять и повторно использовать модули/компоненты/сервисы. Единственное влияние, которое это окажет на скорость, будет заключаться в уменьшении общего размера вашего приложения (меньше компонентов = меньше кода) и, как следствие, в увеличении времени начальной загрузки. А что касается № 2, никогда не бывает стандартно копировать/вставлять код, и это, по моему опыту, является отличительной чертой неопытного разработчика.   -  person Dean    schedule 14.01.2019
comment
Привет @Дин. Я нашел ваш ответ идеальным. Можете ли вы опубликовать этот комментарий в качестве ответа, чтобы я мог принять ваш ответ.   -  person Rohan Chaudhary    schedule 17.01.2019
comment
Готово. Спасибо.   -  person Dean    schedule 17.01.2019


Ответы (3)


Ответ Виталия Боброва - правильный способ сделать это при повторном использовании модулей и компонентов в проектах. Но из этого снимка экрана видно, что они могут копировать/вставлять внутри одного и того же проекта. Вы всегда должны объединять и повторно использовать модули/компоненты/сервисы. Единственное влияние, которое это окажет на скорость, будет заключаться в уменьшении общего размера вашего приложения (меньше компонентов = меньше кода) и, как следствие, в увеличении времени начальной загрузки. А что касается № 2, никогда не бывает стандартно копировать/вставлять код, и это, по моему опыту, является отличительной чертой неопытного разработчика.

person Dean    schedule 17.01.2019

Недопустимо копировать/вставлять компоненты, для этого следует использовать общие модули или библиотеки, см. документацию для справки:

https://next.angular.io/guide/file-structure

https://next.angular.io/guide/libraries

https://next.angular.io/guide/styleguide

person Vitalii Bobrov    schedule 13.01.2019

Мы должны следовать СУХОМУ принципу кодирования. Вы должны создать общий модуль, содержащий повторяющиеся компоненты, которые будут использоваться другими модулями.

person Community    schedule 13.01.2019