Angular2 - 是否可以使用选择器名称获取组件 class 名称

Angular2 - is it possible to get component class name using selector name

是否可以使用 Angular 2 中的选择器名称获取组件 class 名称或组件引用?

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

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

在组件 2 中,是否可以使用选择器 "selector-1" 获取组件 1 class 名称?

示例:

getComponentName(selectorName) {
 // return component name
}

getComponentName('selector-1');

提前致谢

只有在不调用 enableProdMode:

的情况下才可能不需要额外的工作
var node = document.querySelector('selector-1');
var debugNode = window.ng.probe(node);
var name = debugNode.componentInstance.constructor.name;

否则你将不得不自己维护组件映射。