【发布时间】:2016-06-21 03:17:11
【问题描述】:
我遇到了 Typescript 接口的问题。我正在尝试将一个对象(缺少某些字段,例如 createdBy)投射到另一个对象,但我的投射不起作用。
我希望有人可以提供帮助。
这是我拥有的接口文件:
interface IWord {
ascii?: number;
awl570?: boolean;
awl570Sublist?: number;
categoryId: number;
frequency?: number;
groupId: number;
lessonId: number;
name: string;
nawl963?: boolean;
nawl963D?: number;
nawl963Sfi?: number;
nawl963U?: number;
statusId: number;
syllables?: string;
toeflMcG400?: boolean;
toeic?: boolean;
wordForms: IWordForm[];
wordId: number;
createdById: number;
createdDate: string;
modifiedById: number;
modifiedDate: string;
}
interface IWordForm {
definition: string;
posId: number;
sampleSentences: [ISampleSentence];
sourceId: number;
statusId: number;
synonyms: [ISynonym];
wordFormId: number;
wordId: number;
createdById: number;
createdDate: string;
modifiedById: number;
modifiedDate: string;
}
我正在尝试创建这个:
var wos.word = <IWord>{
categoryId: 1,
lessonId: 1,
name: null,
groupId: 1,
statusId: Status.Clean,
toefl: true,
wordForms: <IWordForm[]>[],
wordId: $stateParams.wordId
}
但出现以下错误:
严重性代码描述项目文件行抑制状态 错误 TS2352 既不是类型 '{ categoryId: number;课程编号:数字; 名称:空; groupId:数字; statusId:状态;托福:嘘......'也不打字 'IWord' 可分配给另一个。属性“createdById”是 缺少类型'{ categoryId:数字;课程编号:数字;名称:空; groupId:数字; statusId:状态;托福: 嘘……”管理员 C:\H\admin\admin\app\routes\words.ts 102 活动
【问题讨论】:
标签: typescript