Tôi đang gặp vấn đề khi ẩn và hiển thị một phần tử tùy thuộc vào biến boolean trong Angular 2.
đây là mã để div hiển thị và ẩn:
<div *ngIf="edited==true" class="alert alert-success alert-dismissible fade in" role="alert">
<strong>List Saved!</strong> Your changes has been saved.
</div>
biến được "chỉnh sửa" và nó được lưu trong thành phần của tôi:
export class AppComponent implements OnInit{
(...)
public edited = false;
(...)
saveTodos(): void {
//show box msg
this.edited = true;
//wait 3 Seconds and hide
setTimeout(function() {
this.edited = false;
console.log(this.edited);
}, 3000);
}
}
Phần tử bị ẩn, khi hàm saveTodos khởi động, phần tử được hiển thị, nhưng sau 3 giây, ngay cả khi biến trở lại là false, phần tử không ẩn. Tại sao?
edited
là một biến toàn cầu. Điều gì sẽ là cách tiếp cận của bạn trong một*ngFor-loop
?