2016-12-14 3 views
0

Когда мы называем компонент в Угловом 2 так <my-component></my-component>. Можно ли здесь пройти через attrs, чтобы они могли использоваться в классе компонентов?Угловые атрибуты 2-х атрибутов

пример:

<my-component data-is-live="true"></my-component> 

// class 
export class MyComponent { 
    constructor() { 
     console.log($attrs); 
    } 
} 
+0

Пожалуйста, прочитайте [ask]. Ключевые фразы: «Поиск и исследование» и «Объясните ... любые трудности, которые мешали вам самим решить». –

+0

Возможный дубликат [Угловые 2 внешних входа] (http://stackoverflow.com/questions/33152914/angular-2-external-inputs) –

+0

http://stackoverflow.com/questions/39614451/angular-2-input- binding-does-not-work/39614592 # 39614592 – yurzui

ответ

1

Вы можете просто указать его в качестве входного параметра:

@Component({ 
    selector: 'my-component', 
    template: ` 
    <p>Is it live: {{isLive}} </p> 
    ` 
}) 
export class MyComponent { 
    @Input('is-live') isLive: string; 

    ngOnInit() { 
     console.debug(this.isLive); 
    } 
} 

Смотрите этот plunkr: http://plnkr.co/edit/2E6XcNW6cTOblyhBOEwI?p=preview

Примечание

Вы не можете использовать атрибут, начиная с data-, Angular2 кажется, игнорировать их.

+0

Извините за плохое форматирование. Добавление кода - это катастрофа на мобильном телефоне ... – Robba

+0

Как я могу получить доступ к тому, что var в конструкторе сохраняет возвращаемое значение undefined? –

+0

Не используйте ничего в конструкторе. Вместо этого используйте метод ngOnInit(), поскольку привязки еще не обрабатываются в конструкторе. – Robba

-1

Да, вы можете передавать данные между компонентами (от родителя к ребенку, например) Вот ссылка с различными способами: official doc Надежда, что помогает u :)

+0

Это не отвечало на мой вопрос, нигде на этой странице не показано, как делать то, что я хочу сделать. –

+0

@Johnwilliams '@Input()' decorator указан в этой документации, в то время как ответ невелик (пограничная только ссылка), на самом деле он содержал решение, которое вы приняли! – silentsod

+0

Жизнь очень трудная, я предлагаю вам взять ее на подбородок и просто двигаться дальше. –

Смежные вопросы