in this plunker gesehen abholen, ich bin ein HTML zu einem meiner Elemente dynamisch hinzugefügt, die dazu läuft darauf hinaus:Wie man Angular 2 Wie dynamisch hinzugefügt Router Richtlinie
@Component({
selector: 'my-comp',
template: `<span [innerHTML]="link"></span>`,
}) export class MyComponent {
private linkContent = '<a routerLink="/my-route">GoTo Route</a>';
private link;
constructor(sanitizer: DomSanitizer) {
this.link = sanitizer.bypassSecurityTrustHtml(linkContent);
}
}
Dies führt zu <a routerLink="/my-route">GoTo Route</a>
sein hinzugefügt, um das DOM, aber Angular weiß nichts über die Direktive für dieses Element, und bindet nicht daran. Also, wenn Sie auf den Link klicken, führt es zu einem vollständigen Neuladen mit Re-Bootstrap (das funktioniert nicht in Plunk, es gibt nur eine 404).
Frage: wie angular zu sagen, durch das DOM (oder seinen Teil oder sogar ein einzelnes Element) gehen und Komponenteninitialisierung durchführen, wenn nötig?
mit Ich bin Ich bin mir nicht sicher, ob ich verstanden habe, was Sie hier machen wollen, aber bei Ihrem Plunker ist Ihr Problem, dass der Login-Link nicht funktioniert, oder? Wenn ja, warum verwenden Sie den 'routerLink' in Ihrer Lokalisierung, anstatt ihn in Ihrer Vorlage zu verwenden? – brians69
Hey .. Wie haben Sie das Problem gelöst, um Routerlink zu Anchor-Tag aus Typ Skriptklasse dynamisch hinzuzufügen. Ich habe versucht, dynamische Komponente zu erstellen, aber keinen Erfolg. Bitte hilf mir. –
@MeenakshiKumari Ich ging diesen Pfad schließlich nicht, aber restrukturierte meinen Code, um keine dynamischen Verbindungen stattdessen zu haben – Dethariel