Angular2 ES6@输入备选方案



我正在尝试使用ES6语法构建<markdown-component>。ES6中不支持@Input语法sugar,我找不到可行的替代方案。

我用定义父级中的输入

<ng2-markdown [source]="source"></ng2-markdown>

然后使用接受输入

@Component({
  selector: 'ng2-markdown',
  inputs: [ 'source' ]
})

如果我添加了一个我可以得到的模板,它将按预期输出值,但无法在构造函数中使用输入。

这个模块实际上应该是一个指令,source值将定义要加载的Markdown文件的路径。

多亏了@Eric Martinez的评论,我才得以让它发挥作用

输入直到生命周期的OnInit阶段才可用。

以下操作成功:

...
export class MarkdownComponent {
  constructor () {}
  ngOnInit() {
    console.log(this.source);
  }
...

在初始化输入之前,我试图访问构造函数中的输入。

最新更新