首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能将“BModel[]”转换为“IBData”类型

不能将“BModel[]”转换为“IBData”类型
EN

Stack Overflow用户
提问于 2017-01-19 10:35:08
回答 1查看 29关注 0票数 0

下面有一个类似的类,它实现了一个IBData接口。

代码语言:javascript
复制
export class BModel implements IBData{

}

在API响应之后,我将数据分配给私有变量accountBalanceData,它的类型为IBData

代码语言:javascript
复制
this.accountBalanceData  = data; 

我从api响应调用获得的数据是BModel类型的,即类本身。

我得到了下面的error

代码语言:javascript
复制
[ts] Type 'BModel[]' is not assignable to type 'IBData'.
[ts]
Type 'BModel[]' is not assignable to type 'IBData'.
  Property 'getAcBal' is missing in type 'BModel[]'.

我尝试了下面的typecast

代码语言:javascript
复制
this.accountBalanceData  = data as IBData; 

我得到了下面的error

代码语言:javascript
复制
[ts] Type 'BModel[]' cannot be converted to type 'IBData'.
[ts]
Type 'BModel[]' cannot be converted to type 'IBData'.
  Property 'getAcBal' is missing in type 'BModel[]'.

更新:

代码语言:javascript
复制
.map(res => {            
   res["_body"] = res["_body"].replace(/[\n\r\t]+/g,"");
   this.BModel.data = res["_body"]
   return this.BModel;
 }) 
EN

回答 1

Stack Overflow用户

发布于 2017-01-19 11:37:56

函数map返回一个对象数组,因此该表达式的结果类型

代码语言:javascript
复制
.map(res => {            
   res["_body"] = res["_body"].replace(/[\n\r\t]+/g,"");
   this.BModel.data = res["_body"]
   return this.BModel;
 }) 

将是BModel[]

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41739601

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档