Я хотел бы объединить статически определенные дочерние компоненты с динамическими однократными, которые могут быть получены из потока. Мне нужен общий способ определения карусели в этой карусели, где я могу иметь типизированную коллекцию компонентов. Коллекция может быть определена статически или динамически. Ниже приведен пример:
import 'package:angular/angular.dart';
import 'package:angular/core.dart';
import 'package:angular_components/angular_components.dart';
/**
*
*/
@Component(
selector: 'md-text',
styleUrls: const ['md_text.css'],
template: '<li>{{name}}</li>',
directives: const [
materialDirectives,
]
)
class TextComponent implements OnInit{
@Input()
String name;
TextComponent([this.name]);
TextComponent.withName(String name)
: this(name);
@override
ngOnInit() {
}
}
@Component(
selector: 'md-texts',
styleUrls: const ['text_component.css'],
template: '<ol><md-text *ngFor="let component of components" [name]="component.name"></md-text><ng-content></ng-content></ol>',
directives: const [
CORE_DIRECTIVES,
materialDirectives,
TextComponent
]
)
class TextsComponent<TextComponent> implements OnInit
{
Set<T> _components;
Set<T> get components => _components;
addComponent(T component){
this._components.add(component);
}
removeComponent(T component) {
this._components.remove(component);
}
TextsComponent() {
this._components = new LinkedHashSet<T>();
TextComponent declarativeChannel = new TextComponent.withName("United States");
this.addComponent(declarativeChannel);
}
@override
ngOnInit(){
print("I am here");
}
}
в моем компоненте приборной панели я статически определил использование следующим образом:
<md-texts>
<md-text [name]="'Liberty'"></md-text>
<md-text [name]="'Life'"></md-text>
<md-texts>
Дисплей выглядит следующим образом: United States Liberty Life
Я хочу, чтобы «Свобода» и «Жизнь» также были объединены в мою коллекцию компонентов, чтобы я мог управлять ими с помощью кнопок «Далее» и «Назад». Я также хочу отображать их только тогда, когда требуется их индекс. Как лучше всего это сделать в AngularDart.
Я нашел аналогичный вопрос со старой версией, но со старой версией Как ссылаться на дочерний компонент из его родителя в AngularDart в AD 1.0.0 и Как ссылаться на дочерний компонент из его родителя в AngularDart в AD 1.0.0
С уважением, Надеюсь, я объяснил свою проблему и получу четкое указание о том, как правильно решить эту проблему с дизайном.