Angular2 ES6 @ Альтернатива ввода
Я пытаюсь построить <markdown-component>
используя синтаксис ES6. @Input
Синтаксис Sugar не поддерживается в ES6, и я не могу найти жизнеспособную альтернативу.
Я определяю вход в родительском с помощью:
<ng2-markdown [source]="source"></ng2-markdown>
Затем, принимая ввод, используя:
@Component({
selector: 'ng2-markdown',
inputs: [ 'source' ]
})
Если я добавлю шаблон, который смогу получить, он выведет значение, как и ожидалось, но нет никакого способа использовать входные данные в конструкторе.
Этот модуль должен быть директивой, а source
значение будет определять путь к загружаемому файлу Markdown.
1 ответ
Решение
Благодаря комментарию @Eric Martinez я смог заставить его работать.
Входы недоступны до OnInit
фаза жизненного цикла.
Следующее сработало:
...
export class MarkdownComponent {
constructor () {}
ngOnInit() {
console.log(this.source);
}
...
Я пытался получить доступ к входу в конструкторе, прежде чем входы были инициализированы.