首页 > 解决方案 > 如何在Angular6中映射json结构的接口

问题描述

组件.ts

import * as AssetId from "../../../assetid.json";

export class AssetID {
    abc: number;
    xxx: number;
}

export class Sample {
    public assetId: AssetID = AssetId; // Line no : 9
}

资产ID.json

{
    "abc": 3,
    "xxx": 4
}

在第 9 行,它会产生一个错误,例如

TS2322:类型 'typeof ".json "' 不可分配给类型 'AssetID'。类型'typeof“ .json”'中缺少属性'abc '

我想将此 json 格式映射到'any'打字稿代码中的 void 类型。

标签: angular

解决方案


你应该这样使用

interface IAssetid {
    abc: number;
    xxx: number;
}

其次,您应该从 ts 文件而不是 json 导入 const

export const assetid = {
    'abc': 3,
    'xxx': 4
};

有关更多信息,请阅读此https://stackoverflow.com/a/46991300/3326275


推荐阅读