2016-08-01 112 views
2

我试图学习Angular 2.我的理解是,视图中的插值项目更新时,其相应的变量更新模型中,但在下面的代码中没有看到这种行为。Angular 2 - 组件属性更改,但视图不更新

import { Component, OnInit } from '@angular/core'; 
 

 
@Component({ 
 
    selector: 'ai-header', 
 
    templateUrl: 'app/header/header.component.html', 
 
    styleUrls: ['app/header/header.component.css'], 
 
}) 
 

 
export class HeaderComponent implements OnInit { 
 
    currentTime: Date = new Date(); 
 

 
    getCurrentTime(): void{ 
 
     let dateTime = new Date(); 
 
     let year = dateTime.getFullYear(); 
 
     let month = dateTime.getMonth(); 
 
     let day = dateTime.getDate(); 
 
     let hour = dateTime.getHours(); 
 
     let minute = dateTime.getMinutes(); 
 
     let second = dateTime.getSeconds(); 
 
     dateTime = new Date(year, month, day, hour, minute, second) 
 
     
 
     this.currentTime = dateTime; 
 
    } 
 

 
    ngOnInit(): void { 
 
     setInterval(this.getCurrentTime, 1000); 
 
    } 
 
}

为什么不看法时,该组件的 'currentTime的' 属性更新更新?

回答

3

我觉得应该是:

ngOnInit(): void { 
    setInterval(this.getCurrentTime.bind(this), 1000); 
} 
+0

这是正确的答案,我将其标记为这样只要我能。非常感谢您的快速响应。如果你有时间,你会介意更详细地解释你的答案吗? –

相关问题