我尝试使用ES6语法构建<markdown-component>
。 ES6中不支持@Input
语法糖,但我无法找到可行的替代方案。
我在父母中定义输入:
<ng2-markdown [source]="source"></ng2-markdown>
然后使用以下方式接受输入:
@Component({
selector: 'ng2-markdown',
inputs: [ 'source' ]
})
如果我添加一个模板,我可以得到它将按预期输出值,但是没有办法在构造函数中使用输入。
此模块实际上应该是一个指令,source
值将定义要加载的Markdown文件的路径。
答案 0 :(得分:2)
感谢@Eric Martinez的评论,我能够让它发挥作用。
在生命周期的OnInit
阶段之前,输入无法使用。
以下工作:
...
export class MarkdownComponent {
constructor () {}
ngOnInit() {
console.log(this.source);
}
...
在输入初始化之前,我试图访问构造函数中的输入。