选项不重新渲染 [ng2-select2] [ajax]
选项不重新渲染 [ng2-select2] [ajax]
我正在使用ng2-select2 ajax来实现级联下拉菜单,但是当我改变第一个下拉菜单时,应该重新渲染第二个下拉菜单的选项,但选项没有重新渲染。第二个下拉菜单将通过@Input()从第一个下拉菜单的值接收值并运行ajax。如果我使用setTimeout,它将重新渲染。有没有不使用setTimeout的方法?
第二个下拉菜单
@Input() value: string; public ngOnChanges(): void { this.getConditionType(this.value); } public prepareUrl(value: string): void { this.url = myUrl + '/' + pathVariable; // setTimeout(() => { if I use timeout it will re render this.setSelectOption(this.url); // }, 1); } public setSelectOption(url: string): void { let ajaxOptions = { url: url, dataType: 'json', delay: 500, cache: false, data: (params: any) => { return { search: params.term, gotoPage: params.page }; }, processResults: (data: any, params: any) => { params.page = params.page || 1; return { results: $.map(data.objectValue.items, function (obj) { return { id: obj.code, text: obj.desc }; }), pagination: { more: (params.page * 10) < data.objectValue.total_count } }; }, }; this.options = { ajax: ajaxOptions, }; }
HTML