我在node.js中使用typescript工作,我定义了Tariff和Tariffs类。我还使用JSON创建的假数据应与Classes兼容。但我在resolve()
方法中遇到错误:
类型'{blabbla ...'的参数不能分配给参数 输入'关税' PromiseLike”。
export class FakeDataProvider implements IDataProvider {
loadTariffs?(request: LoadTariffsRequest): Promise<Tariffs>{
return new Promise<Tariffs>((resolve, reject) => {
resolve(fakeTariffs);
});
}
}
接下来,我已经在另一个文件中定义并导出了这些类:
export class Tariff {
tariffOptionId: number = 0;
name: string = '';
}
export class Tariffs {
// tariff: Tariff = new Tariff(); // this does not work
tariff: Array<Tariff> = []; // this does not work too
}
然后我将伪造的模拟JSON数据导出到另一个文件中:
let fakeTariffs =
{
'tariffs': {
'tariff': [
{ "name": "tariff1", "tariffOptionId": 1 },
{ "name": "tariff2", "tariffOptionId": 2 },
{ "name": "tariff3", "tariffOptionId": 3 }
]
}
};
export default fakeTariffs;
我做错了什么以及如何修改类以便与假数据兼容?
答案 0 :(得分:0)
你有;
tarrif
代码的第一部分,和;
tariff
在JSON中......
答案 1 :(得分:0)
解决方案是使用resolve(fakeData.tariffs)
代替resolve(fakeData)
。