可能是因为异步获取结果后,ngModel绑定的变量没有及时更新。一个解决方法是,在异步获取结果后手动调用ngModel的update方法来更新绑定的变量。
示例代码:
@Component({
selector: 'my-component',
template:
})
export class MyComponent {
name: string;
constructor(private userService: UserService) {}
getData() { this.userService.getUserName().subscribe((res) => { this.name = res; // 手动调用ngModel的update方法来更新绑定的变量 Promise.resolve(null).then(() => { this.nameModel.update.emit(this.name); }); }); } }
可以看到,在异步获取结果后,我们手动调用了ngModel的update方法,来更新绑定的变量。这样就解决了ngModel变量不更新的问题。