我正在开发一个Angular 4应用程序。在TS文件中,我有以下数据类型:
testBody: {
test_category: string,
test_instruction: string,
test_duration: string,
test_name: string,
test_class: string,
test_language: string,
test_exam: string,
test_board: string,
client_id: string,
program_id: string,
test_visibility: number,
test_sections_data: [
{
section_name: string,
section_max_marks: number,
section_cut_off: number,
section_topper_marks: number,
section_number_of_questions: number
}]
}
现在,我想实例化一个空的testBody
对象,该对象可以用html代码绑定。为此,我在控制器类中执行以下操作:
...
constructor(private modalService: NgbModal, private route: ActivatedRoute, private dragulaService: DragulaService, private http: HttpClient) {
const bag: any = this.dragulaService.find('bag-task1');
...
this.testBody = {
test_category: '',
test_instruction: '',
test_duration: '',
test_name: '',
test_class: '',
test_language: '',
test_exam: '',
test_board: '',
client_id: allGlobals.client_id,
program_id: this.program_id,
test_visibility: null,
test_sections_data: null
};
...
}
问题是如何初始化test_sections_data
的空数组?我也有tried test_sections_data: []
,但它不起作用。
答案 0 :(得分:0)
一个好的做法是添加TestBody
和TestSectionData
接口:
https://jsfiddle.net/2s9sav9m/1/
然后,您可以根据需要将默认值设置为[]并按下或重置,同时保持数据的一致性。
您还可以通过向界面添加test_sections_data
来使?
成为可选项:
TestBody {
...
test_sections_data?: TestSectionData[]
...
}
如果您希望该值默认为伪造。
希望这有意义/有帮助!