2

erhalten Ist es möglich, Komponente Klassenname oder Komponentenreferenz mit Selektor Name in Angular 2 erhalten?Angular2 - Ist es möglich, Komponenten Klassennamen mit Selektor Name

@Component({ 
    selector: 'selector-1', 
    template: '<h1>Hello</h1>', 
}) 
export class Component1 {} 

@Component({ 
     selector: 'selector-2', 
     template: '<h1>Hello</h1>', 
    }) 
    export class Component2 {} 

In Komponente 2 ist es möglich, den Klassennamen component1 mit dem Selektor "selector-1" zu erhalten?

Beispiel:

getComponentName(selectorName) { 
// return component name 
} 

getComponentName('selector-1'); 

Vielen Dank im Voraus

Antwort

1

Es ist möglich, ohne zusätzliche Arbeit nur, wenn Sie nicht enableProdMode nennen:

var node = document.querySelector('selector-1'); 
var debugNode = window.ng.probe(node); 
var name = debugNode.componentInstance.constructor.name; 

Andernfalls werden Sie Komponente pflegen müssen Karte selbst.

+0

Danke !! Es funktionierte –

Verwandte Themen