我有以下代码:
<view-user *ngIf="selectedUser" [userID]="selectedUser.id"></view-user>和一个API调用:view-user组件中的loadUser(userID),
ngOnInit() 无论何时更改selectedUser,ngOnInit都不会被调用,布局也不会更改。这意味着尽管selectedUser不同,但我看到的是相同的用户。
我相信只会在第一次调用ngOnInit(),之后变量会发生变化,但不会再调用ngOnInit()。
如何在userID发生更改时运行loadUser()方法?
发布于 2016-08-06 17:34:10
您可以使用设置器更改userID:
private _userID: number;
get userID() {
return this._userID;
}
@Input()
set userID(userID: number) {
this._userID = userID;
loadUser(userID);
}或者,您可以使用ngOnChanges method。
https://stackoverflow.com/questions/38802682
复制相似问题