0
如果我的模型的propery發生更改,我需要每次調用JQuery函數。更改檢測角度2模型的屬性
person = {firstName:firstName, lastName:lastName}
作爲一個例子。如果我改變的人對象的的firstName財產,我每次需要觸發的功能。其實我需要一個像這個對象的屬性訂閱的東西。
這怎麼可能?
在此先感謝。
如果我的模型的propery發生更改,我需要每次調用JQuery函數。更改檢測角度2模型的屬性
person = {firstName:firstName, lastName:lastName}
作爲一個例子。如果我改變的人對象的的firstName財產,我每次需要觸發的功能。其實我需要一個像這個對象的屬性訂閱的東西。
這怎麼可能?
在此先感謝。
這聽起來像你正在尋找DoCheck
(link to docs)生命週期鉤。這是一個事件,將在每完成一輪變化檢測後觸發。請記住,它可能會被觸發很多,並且在該鉤子中執行大量操作可能會對性能產生重大負面影響。
下面是查找在person.firstName
屬性更改一個例子,如果發現變化,它記錄到控制檯:
import { Component, DoCheck } from '@angular/core';
@Component({
selector: 'app-root',
template: `<input type="text" [(ngModel)]="person.firstName">`,
styleUrls: ['./app.component.css']
})
export class AppComponent implements DoCheck {
person = { firstName: 'Donald', lastName: 'Duck' };
oldFirstName: string;
ngDoCheck() {
if (this.person.firstName !== this.oldFirstName) {
console.log(`Change first name from "${this.oldFirstName}" to "${this.person.firstName}"`);
this.oldFirstName = this.person.firstName;
}
}
}
請看看我的回答,看它是否可以幫助你 –