Как получить имя родительского компонента в дочернем компоненте в angular 2? - PullRequest
0 голосов
/ 21 мая 2018

Предположим, у меня есть три компонента: C1, C2 и C3 .

Я хочу сделать C2 дочерним для и C1, и C3 .И в соответствии с тем, какой компонент является родителем C2, хотите показать текст HTML - « C1 - мой родитель » или « c3 - мой родитель ».Это поверхностная форма моей проблемы.Я хочу получить доступ к имени родительского компонента в c2, затем изменит его innerHTML соответственно.

Как получить доступ к имени родительского компонента в angular2?

1 Ответ

0 голосов
/ 21 мая 2018

Вы можете просто передать то, что будет описывать ваш родительский компонент, дочернему элементу: @Input.

Пример дочернего компонента:

@Component({
  selector: 'child',
  template: `
    <div>{{ parentName }} is my parent</div>
  `,
})
export class ChildComponent {
  @Input() parentName: string;
}

Первый родитель:

@Component({
  selector: 'first-parent',
  template: `
    <child-component parentName="'first-parent-component'" />
  `,
})
export class FirstParentComponent {
}

Второй родитель:

@Component({
  selector: 'second-parent',
  template: `
    <child-component parentName="'second-parent-component'" />
  `,
})
export class SecondParentComponent {
}
...