У меня есть сценарий, в котором мне нужно передать список различных "компонентов" другому компоненту angular. Я передаю список компонентов в виде массива, используя @Input. Как я могу отобразить эти компоненты в HTML?
Передача и отображение компонентов angular 5
Ответы (1)
Было бы полезно посмотреть код, чтобы иметь представление о том, чего вы пытаетесь достичь.
Из документации, @Input()
- Свойство Input — это устанавливаемое свойство, аннотированное декоратором @Input. Значения поступают в свойство, когда оно привязано к данным с привязкой свойства .
Аннотация @Input()
используется для передачи данных. Он не используется для передачи компонентов другому компоненту.
Чтобы отобразить другой компонент внутри другого компонента, обратитесь к селектору вложенного компонента внутри родительского компонента. Селектор является частью метаданных компонента
-
selector
: селектор CSS, который сообщает Angular создать и вставить экземпляр этого компонента везде, где он находит соответствующий тег в HTML-шаблоне. Например, если HTML-код приложения содержит , Angular вставляет экземпляр представления HeroListComponent между этими тегами.
app-hero-list.component.ts
Создайте компонент и укажите селектор в метаданных.
@Component({
selector: 'app-hero-list',
templateUrl: './hero-list.component.html',
providers: [ HeroService ]
})
app.component.html
Затем вы можете сослаться на этот селектор как на пару тегов HTML в шаблоне другого компонента.
<app-hero-list></app-hero-list>
Посмотрите ссылку на метаданные компонента, указанную выше, и учебник по Angular, чтобы получить дополнительную информацию об отображении компонентов в других компонентах.
Если вам нужен более подробный ответ, дополните свой вопрос примером кода.