我在我用于获取ResourceWeightage
详细信息的服务之一中使用此方法:
getResourceLevelProgress(learning_node_id: number): Promise<IResourceWeightage> {
return this.getOverallProgressData()
.then(learning_nodes => learning_nodes.find(node => node.learning_node_id === learning_node_id).resource_weightage);
}
以下是我访问此方法以获取ResourceWeightage
详细信息的组件中的方法:
声明:
resourceWeightage: IResourceWeightage;
呼叫:
this.resourceWeightage = this.progressUpdateService.getResourceLevelProgress(this.learningNodeId);
访问此变量时出现此错误:
类型'Promise'不能分配给IResourceWeightage类型。
答案 0 :(得分:0)
那是因为getResourceLevelProgress
正在回复承诺。
您可以将resourceWeightage
的声明更改为:
resourceWeightage: Promise<IResourceWeightage>;
或者将呼叫更改为:
this.progressUpdateService.getResourceLevelProgress(this.learningNodeId).then(rw => this.resourceWeightage = rw);