{{value}}-视图显示旧值

时间:2019-01-22 05:35:02

标签: angular7

在源中更改字段值后,视图仍显示旧值。 Angular引擎是否使用“严格相等”(===)进行更改检测?

如何解决此问题(我不喜欢下面的解决方案)?谢谢

SOURCE:
export class TestComponent implements OnInit {

    date: Date = new Date();

    constructor() {
    }

    ngOnInit() {
    }

    change() {
        this.date.setHours(11);                   // not working

        //const newDate = new Date();     
        //newDate.setHours(11);
        //this.date = newDate;                    // working
    }
}

模板视图:

<div>
  <button (click)="change()">
    Change
  </button>
  <h4>
    {{date}}
  </h4>
</div>    

2 个答案:

答案 0 :(得分:0)

尝试ng-click ... 我认为您在这种情况下需要做两种方式的数据绑定...

答案 1 :(得分:0)

@BitVer尝试此操作,您正在更改Date对象,但这不是两种方式的绑定,这就是为什么它不在模板视图中更新的原因。

但是您可以通过重新分配date变量来更改它。

 change() {
   this.date = this.date.setHours(11); 
 }