错误 TS2339:“ApiResponse”类型上不存在属性“PRE”

问题描述 投票:0回答:1

我正在尝试从网络服务中检索数据。我可以和你分享 JSON 结构。

   "PRE":[
      {
         "DEPO":979534429484,
         "CLER":"RC3038",
         "INTITULE1":"PORTEFEUILLE RC3038",
         "PHONE":"0999999999999",
         "TOMANY":"FALSE",
         "PREPTF":[
            {
               "NUM":146662,
               "CLER":"RC3038",
               "SVM":94533166,
               "ISIN":"BE0945331669",
               "LABEL":"ARKIMEDES FONDS",
               "QUANTITE":10.00,
               "DATE":"2012-04-18",
               "TYPE":"IN",
               "PERSONNE_CONTACT":"",
               "CONTREPARTIE":"DEXIA",
               "TEL":0,
               "FAX":0,
               "STATUT":9,
               "STATUT_LIB":"Fait",
               "REF_ALPHA":"CO12240000048563",
               "REF_RBC":"",
               "TRADE_DATE":"2012-04-18",
               "VALUE_DATE":"2012-04-19",
               "TRAITEMENT_DATE":"2012-04-18",
               "ANNULATION_DATE":"0001-01-01",
               "RECEPTION_DATE":"2012-04-25",
               "REM1":"",
               "REM2":"",
               "COURS_MOYEN_ACHAT":160.100000,
               "ACHAT_DATE":"0001-01-01",
               "PMBIS":"N",
               "TIS":0.000000,
               "CHANGEMENT_BENEF_ECO":"O"
            }
         ]
      },

   ]

我不知道界面的结构对你来说是否正确?

export interface TransferResponse extends ApiResponse {
  PRE: PreTransfer[];
}

export interface PreTransfer {
  DEPO: number;
  CLER: string;
  INTITULE1: string;
  PHONE: string;
  TOMANY: string;
  PREPTF: {
    NUM: number;
    CLER: string;
    SVM: number;
    ISIN: string;
    LABEL: string;
    QUANTITE: number;
    DATE: string;
    TYPE: string;
    PERSONNE_CONTACT: string;
    CONTREPARTIE: string;
    TEL: number;
    FAX: number;
    STATUT: number;
    STATUT_LIB: string;
    REF_ALPHA: string;
    REF_RBC: string;
    TRADE_DATE: string;
    VALUE_DATE: string;
    TRAITEMENT_DATE: string;
    ANNULATION_DATE: string;
    RECEPTION_DATE: string;
    REM1: string;
    REM2: string;
    COURS_MOYEN_ACHAT: number;
    ACHAT_DATE: string;
    PMBIS: string;
    TIS: number;
    CHANGEMENT_BENEF_ECO: string;
  }[];
}

然后,我正在尝试创建允许我从 web 服务检索数据的方法。

customerTransfers: PreTransfer;

overviewTransfers(account: string): void {
  this.service.overviewTransfers(account).pipe(
    takeUntil(this.unsubscribe$)
  ).subscribe(res => {
    this.customerTransfers = res.PRE.map(val => {
      return {
        

      }
    });

  });
}

我收到此错误消息:

error TS2339: Property 'PRE' does not exist on type 'ApiResponse'.

67     this.customerTransfers = res.PRE.map(val => {

我不明白哪里出了问题,我跟着一个教程。

谢谢

angular
1个回答
0
投票

肯定地说,我需要看看你们服务的

overviewTransfers
方法。但是因为你没有分享它,我可以假设它说它返回一个 Observable 类型,基于错误的文本。最有可能的是,确实没有像PRE中的
ApiResponse
这样
声明的字段(实际上在运行时没有呈现)
。如果是这样,则应在此处指定更精确的类型:
Observable<TransferResponse>
.

此外,我注意到

customerTransfers
字段的类型为
PreTransfer
,尽管从名称和分配给它的内容来看,它是一个数组,应键入为 PreTransfer[]。

相关问题

属性“有效”在类型“字符串”上不存在

TypeScript 错误:类型“Window”上不存在属性“X”

类型“EventTarget”上不存在属性“数据集”

为子组件设置 ref 时,类型 ReactElement 上不存在属性“ref”

为什么我在日记条目记录上触发的 beforeSubmit UE 脚本上收到“类型错误:无法读取未定义的属性‘getLineCount’”

TypeError:无法读取未定义的属性(读取“添加”),“classlist.add”上的类型错误

Vue-Cannot read properties of undefined (reading 'prototype')

错误问题无法读取未定义的属性“切片”

mypy工具字面量类型检查出错

React Redux 类型错误:无法添加属性 _,对象不可扩展

定义一个只有一个属性的类型,并且该属性的名称必须在数组中

在 TRPC 推断类型上使用 toZod 包时出现剥离错误

我正在做一个项目,我想在邮递员上填充一些数据,但是有两个问题

用于更新数据的 Laravel 9 MODAL 不起作用 [此集合实例上不存在属性 [id]。]

MoviePy 和 FFMPEG“无属性”错误

TSeD 为 1 个属性声明模型多类型的正确方法

MissingPropertyException:Gradle 任务因未知属性而失败

fetch() POST 请求返回“错误 415 不支持的媒体类型”

Typescript 错误:“预期类型来自属性‘webPreferences’,它在此处声明为类型‘BrowserWindowConstructorOptions’”

ASP.NET Core 自定义验证属性本地化

热门问答
最新问题