gpt4 book ai didi

angular - Typescript 对象动态分配更改 fieldName

转载 作者:搜寻专家 更新时间:2023-10-30 21:45:25 24 4
gpt4 key购买 nike

我正在使用现有对象的一些值创建一个新对象。现在在给 fieldId 分配 crs.parentFieldId 时,在最终对象中,fieldId 名称本身更改为 parentFieldId。这里出了什么问题?1. 代码片段

ionViewWillEnter() {
console.log('ionViewWillEnter EditSubfieldFeePage');
this.fs.getCourseFieldBySelectedId().subscribe((cf: CourseField) => {
let ids = this.fs.getSelectedCourses();
for(let crs of cf.courses) {
if(ids.has(crs.courseId)) {
let courseFee: CourseFee = {
fieldId: crs.parentFieldId,
fieldName: cf.fieldName,
courseId: crs.courseId,
courseName: crs.courseName,
feeAmount: 0,
feeType: "MONTHLY"
}
this.courseFeeList.push(crs);
}
}

});
}

类定义

export class CourseFee {
fieldId: string;
courseId: string;
feeAmount: number;
feeType: string;
}

它工作正常,但在控制台中 fieldId 被重命名为 parentFieldId。

最佳答案

似乎您没有添加新的 courseFee 对象,而是添加了 crs 对象(它具有 parentFieldId 属性)

if(ids.has(crs.courseId)) {
let courseFee: CourseFee = {
fieldId: crs.parentFieldId,
fieldName: cf.fieldName,
courseId: crs.courseId,
courseName: crs.courseName,
feeAmount: 0,
feeType: "MONTHLY"
}
this.courseFeeList.push(crs); // <--- here!
}

为了修复它,改变这一行

this.courseFeeList.push(crs);

成为

this.courseFeeList.push(courseFee);

关于angular - Typescript 对象动态分配更改 fieldName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56102300/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com