如何将以异步方式提取的值传递给Angular2

时间:2016-07-27 18:20:34

标签: angular angular2-template

我正在尝试将值传递给组件的输入

<my-comp [question]="currentQuestion"></my-comp>

但变量currentQuestion是在页面首次加载时异步获取的,所以可以理解我收到undefined错误。我怎么能绕过这个?

my-comp的模板

<div>
  <p>{{question.title}}</p>
</div>

my-comp的课程

@Component({
  selector: "my-comp",
  templateUrl: "./my-comp.html"
})
export class MyComp {
  @Input() question: any;

  constructor() {}
}

1 个答案:

答案 0 :(得分:1)

在子组件Elvis中插入内插?.运算符my-comp

{{ currentQuestion?.aField }}

如果currentQuestion是假的(未定义,null等),则无法访问aField成员。

在获得异步调用的响应之前,

currentQuestion将是未定义的。

<强>更新

您的my-comp模板应如下所示:

<div>
  <p>{{question?.title}}</p>
</div>

内插?.运算符。