在打字稿中分配嵌套接口

时间:2021-02-04 21:40:43

标签: javascript typescript

我正在尝试为打字稿中的嵌套接口分配一个值,但即使格式正确匹配,编译器似乎也抛出错误


type wheelT = [contemp: number, motemp: number, error: string];

interface getData {
  frontLeft: wheelT[];
  frontRight: wheelT[];
  rearLeft: wheelT[];
  rearRight: wheelT[];
  voltage: number;
  amps: number;
  mode: string;
  FWD: string;
}

initjson: getData = {
    frontLeft: [0, 0, "000"],
    frontRight: [0, 0, "000"],
    rearLeft: [0, 0, "000"],
    rearRight: [0, 0, "000"],
    voltage: 0,
    amps: 0,
    mode: "--",
    FWD: "--",
  };

本质上在frontLeft、frontRight、rearLeft、rearRight处抛出一个错误,表示它不可分配。

1 个答案:

答案 0 :(得分:0)

您的类型不正确。您的 wheelT 类型是一个包含 3 个条目的元组。 frontLeft(以及 frontRight、rearLeft、rearRight)属于 wheelT[] 类型 - 所以是一个元组数组。将此更改为 wheelT(没有数组括号),它应该可以工作。

没有数组括号,getData 看起来像这样:

interface getData {
  frontLeft: wheelT
  frontRight: wheelT;
  rearLeft: wheelT;
  rearRight: wheelT;
  voltage: number;
  amps: number;
  mode: string;
  FWD: string;
}

这里是 working TS Playground

相关问题