Je développe une nouvelle application dans Angular2 et j'ai besoin de charger dynamiquement 8 contrôles (grille, diagrammes, calendriers e.ct) sur mon application. Je suis capable de charger tous ces contrôles dynamiquement. Mais mon exigence est de les afficher de façon particulière comme deux contrôles par rangée que je suis incapable de faire. Actuellement, tous les contrôles sont chargés mais tous dans une colonne l'un en dessous de l'autre.Chargement de composants dynamiques à certains emplacements dans Angular2
Le code ci-dessous montre comment j'ai obtenu la liste des gadgets et comment je l'ajoute au composant en utilisant viewContainerRef. Mais je ne pouvais pas contrôler où ces composants peuvent être affichés.
for (let gadget of gadgets) {
this.userService.getGadgetsData(gadget.Id).subscribe(gadgetsData => {
switch (gadget.Name) {
case "PieChart":
this.donughtChartData = gadgetsData.Data.Issues.map((v: any) => ({
category: v.Values[0].Value,
value: v.Values[2].Value,
}));
const factory = this.componentFactoryResolver.resolveComponentFactory(DonutComponent);
const ref = this.viewContainerRef.createComponent(factory);
ref.instance.donutchartData = this.donughtChartData;
ref.changeDetectorRef.detectChanges();
break;
Montrez-nous ce que vous avez fait jusqu'à présent afin que nous puissions vous aider à – YounesM
j'ai mis à jour la question avec un code. Ici, je suis en mesure d'obtenir tous les composants dynamiquement et de les afficher. Mais ne pouvait pas contrôler comment ils peuvent être affichés. comme deux contrôles par rangée. – indra257
Qu'en est-il de votre modèle? – YounesM