TypeScript 错误:类型 'MCBHS190SubmissionInitDto[]' 缺少属性 'targetYear' 的解决方法
TypeScript 错误:类型 'MCBHS190SubmissionInitDto[]' 缺少属性 'targetYear' 的解决方法
在 TypeScript 代码中,如果遇到以下错误:
不能将类型 '{ companyId: string; submissionContentId: string; submissionContentName: string; jobSeekerByCompanyId: string; submissionRequestId: string; jobSeekerId: string; }[]' 分配给类型 'MCBHS190SubmissionInitDto[]'。
类型 '{ companyId: string; submissionContentId: string; submissionContentName: string; jobSeekerByCompanyId: string; submissionRequestId: string; jobSeekerId: string; }' 中缺少属性 'targetYear',但类型 'MCBHS190SubmissionInitDto' 中需要该属性。ts(2322)
formConfig.tsx(22, 5): 在此处声明了 'targetYear'。
这通常意味着你试图将一个缺少 'targetYear' 属性的数组赋值给一个需要该属性的数组类型。
代码示例
以下是一个示例代码,演示了这个错误以及如何解决它:
const submissionList: MCBHS190SubmissionInitDto[] = [];
for (var i = 0; i < submissionContentIdList.length; i++) {
submissionList.push({
submissionContentId: submissionContentIdList[i],
submissionContentName: submissionContentNameList[i],
companyId: companyId,
jobSeekerId: submissionRequestObjList[i].jobSeekerId,
jobSeekerByCompanyId: submissionRequestObjList[i].jobSeekerByCompanyId,
submissionRequestId: submissionRequestObjList[i].submissionRequestId,
targetYear: '', // 添加 targetYear 属性
});
}
解决方法:
- 在
submissionList的每个元素中添加 'targetYear' 属性。 - 根据实际需求设置 'targetYear' 的值。
注意:
- 'targetYear' 的值类型应该与 'MCBHS190SubmissionInitDto' 类型中的 'targetYear' 属性类型一致。
- 如果 'targetYear' 属性是可选的,则可以将它设置为
undefined。
通过添加 'targetYear' 属性,你就可以将数组成功分配给 'MCBHS190SubmissionInitDto[]' 类型,并解决这个 TypeScript 错误。
原文地址: https://www.cveoy.top/t/topic/pTKU 著作权归作者所有。请勿转载和采集!