Свойство, использующее дочерний компонент в Angular? - PullRequest
0 голосов
/ 05 марта 2020

Как решить, когда использовать дочерний angular компонент внутри родителя?

Должен ли это быть один объект, например, список уроков и добавить урок.

Я пытаюсь получить, когда должен использовать дочерний компонент, когда существуют реальные отношения между родителем и ребенком?

Допустим, у нас есть карточка продукта с кнопками внутри:

<app-product-card>
    <!-- Product information here -->
    <app-product-buttons></app-product-buttons>
</app-product-card>

Вкл. кнопки app-product-buttons имеет событие cli c , который показывает список пользователей, которые купили этот продукт.

Должен ли я вставить <app-users-producst-buy></app-users-producst-buy> внутрь:

  <app-product-card>
        <!-- Product information here -->
        <app-product-buttons [product]="product"></app-product-buttons>
        <app-users-producst-buy></app-users-producst-buy>
    </app-product-card>

Или внутрь как дочерний элемент в кнопках:

  <app-product-card>
        <!-- Product information here -->
        <app-product-buttons>
               <app-users-producst-buy [product]="product"></app-users-producst-buy>
        </app-product-buttons>
    </app-product-card>

Как принять правильное решение по этим делам? Или я должен использовать Dynami c компоненты?

1 Ответ

0 голосов
/ 06 марта 2020

Из моего опыта работы с Angular framework это решение не всегда легко, как вы говорите.

Более того, вы можете применять такие правила:

1) Модульность: I всегда используйте дочерний компонент, когда дочерний компонент, который я собираюсь разработать, появится в нескольких местах проекта.

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

3) DRY (не повторяйте себя): думая о небольших специализированных компонентах (не вдаваясь в наверняка избыток) может стать ключом к сохранению небольшой, но очень функциональной кодовой базы.

Я надеюсь, что эти пункты помогут вам принять решение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...