如何将异步获取的值传递给 Angular2 中组件的输入
How to pass value that's being fetched asynchronously to a component's Input in Angular2
我正在尝试将值传递给组件的输入
<my-comp [question]="currentQuestion"></my-comp>
但是变量 currentQuestion
是在页面首次加载时异步获取的,因此可以理解我收到 undefined
错误。我该如何解决这个问题?
my-comp 模板
<div>
<p>{{question.title}}</p>
</div>
class 我的补偿
@Component({
selector: "my-comp",
templateUrl: "./my-comp.html"
})
export class MyComp {
@Input() question: any;
constructor() {}
}
在子组件 my-comp
中尝试 Elvis
运算符 ?.
内部插值 my-comp
。
{{ currentQuestion?.aField }}
如果 currentQuestion
是假的(未定义、空等),它将不会访问 aField
成员。
currentQuestion
将是未定义的,直到您从异步调用中获得响应。
更新:
您的 my-comp
模板应如下所示:
<div>
<p>{{question?.title}}</p>
</div>
它有 ?.
个内插运算符。
我正在尝试将值传递给组件的输入
<my-comp [question]="currentQuestion"></my-comp>
但是变量 currentQuestion
是在页面首次加载时异步获取的,因此可以理解我收到 undefined
错误。我该如何解决这个问题?
my-comp 模板
<div>
<p>{{question.title}}</p>
</div>
class 我的补偿
@Component({
selector: "my-comp",
templateUrl: "./my-comp.html"
})
export class MyComp {
@Input() question: any;
constructor() {}
}
在子组件 my-comp
中尝试 Elvis
运算符 ?.
内部插值 my-comp
。
{{ currentQuestion?.aField }}
如果 currentQuestion
是假的(未定义、空等),它将不会访问 aField
成员。
currentQuestion
将是未定义的,直到您从异步调用中获得响应。
更新:
您的 my-comp
模板应如下所示:
<div>
<p>{{question?.title}}</p>
</div>
它有 ?.
个内插运算符。