Javascript 在加载应用程序时调用函数
我想检查当前日期是在某个日期之前还是之后,例如,如果是在该日期之前,则应显示false,否则为true 该项目位于Angular 8中,目前的情况如下:Javascript 在加载应用程序时调用函数,javascript,angular,typescript,Javascript,Angular,Typescript,我想检查当前日期是在某个日期之前还是之后,例如,如果是在该日期之前,则应显示false,否则为true 该项目位于Angular 8中,目前的情况如下: export class AppComponent { today = new Date(); dateToCheck = new Date("2019-01-01"); result = false; checkDate() { if(this.today < this.dateToChe
export class AppComponent {
today = new Date();
dateToCheck = new Date("2019-01-01");
result = false;
checkDate() {
if(this.today < this.dateToCheck) {
this.result = false;
} else { this.result = true;
}
}
}
导出类AppComponent{
今天=新日期();
dateToCheck=新日期(“2019-01-01”);
结果=假;
checkDate(){
如果(this.today
如果它连接到html中的一个按钮并单击该按钮,则可以正常工作
<button (click)="checkDate()">check</button>
the result is: {{result}}
检查
结果是:{result}
但是,有没有一种方法可以让它在页面加载时调用自己,而不单击该按钮?为什么不在构造函数中调用它或
ngOnInit
:
ngOnInit:一种回调方法,在默认更改检测器第一次检查指令的数据绑定属性之后,在检查任何视图或内容子级之前,立即调用该方法。当指令被实例化时,它只被调用一次
导出类AppComponent实现OnInit{
今天=新日期();
dateToCheck=新日期(“2019-01-01”);
结果=假;
恩戈尼尼特(){
这是checkDate();
}
checkDate(){
如果(this.today
在页面加载时,在Angular或JavaScript中调用函数可能有十几种方法。请更具体一点。函数“ngOnInit”并不是为了这个目的而发明的?这个答案符合OP的需要,但是解释一下为什么调用构造函数/ngOnInit会很有帮助。
export class AppComponent implements OnInit {
today = new Date();
dateToCheck = new Date("2019-01-01");
result = false;
ngOnInit() {
this.checkDate();
}
checkDate() {
if(this.today < this.dateToCheck) {
this.result = false;
} else {
this.result = true;
}
}
}