Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 如何避免错误类型错误:无法读取属性';nativeElement';未定义的?_Angular_Typescript_Angular Directive - Fatal编程技术网

Angular 如何避免错误类型错误:无法读取属性';nativeElement';未定义的?

Angular 如何避免错误类型错误:无法读取属性';nativeElement';未定义的?,angular,typescript,angular-directive,Angular,Typescript,Angular Directive,我试图在Angular 10中创建一个应用程序。它是一个可重用的组件。从父组件接收输入参数 在.ts文件中,我有以下内容:- export class DateTimeComponent implements OnInit { private _ngModel: Moment= moment(); @Input() datePlaceHolder: string = "Date"; @Input() timePlaceHolder:

我试图在Angular 10中创建一个应用程序。它是一个可重用的组件。从父组件接收输入参数

在.ts文件中,我有以下内容:-

export class DateTimeComponent implements OnInit {
    private _ngModel: Moment= moment();

    @Input()
    datePlaceHolder: string = "Date";

    @Input()
    timePlaceHolder: string = "Time";

    @Input()
    timeFormat:number=24;

    @Input()
    minutesGap:number=10;

    timePart: string | Moment="";

    datePart:Moment;

    constructor() {}

    ngOnInit() {
    }

    @Input()
    get ngModel() {
        return this._ngModel
    }

    @Output()
    ngModelChange = new EventEmitter <Moment>();

    set ngModel(date: Moment) {
        let m=date.minutes()+this.minutesGap-1;
        date.minutes(m  - (m % this.minutesGap));
        this.timePart = date;
        this.datePart=date;
        this._ngModel = date;
        this.ngModelChange.emit(date);
    }

    timePartChange(ev:any) {
        let d = moment(this._ngModel);
        let m=moment(ev,"LT");
        d.hours(m.hours()).minutes(m.minutes());
        this.ngModel=d;
    }

    datePartChange(ev:Moment) {
        let d = this._ngModel;
        ev.hours(d.hours()).minutes(d.minutes());
        this.ngModel=ev;
    }

}
导出类DateTimeComponent实现OnInit{
private _ngModel:Moment=Moment();
@输入()
日期占位符:string=“Date”;
@输入()
时间占位符:string=“Time”;
@输入()
时间格式:数字=24;
@输入()
分钟间隔:数字=10;
时间部分:字符串|矩=”;
日期部分:时刻;
构造函数(){}
恩戈尼尼特(){
}
@输入()
获取ngModel(){
把这个还给我
}
@输出()
ngModelChange=neweventemitter();
设置模型(日期:时刻){
设m=date.minutes()+this.minutesGap-1;
日期分钟数(m-(m%this.minutesGap));
this.timePart=日期;
this.datePart=日期;
此模式=日期;
此.ngModelChange.emit(日期);
}
timePartChange(ev:任何){
设d=力矩(本模型);
设m=力矩(ev,“LT”);
d、 小时(m.hours())。分钟(m.minutes());
这个.ngModel=d;
}
datePartChange(ev:时刻){
设d=这个;
ev.小时(d.小时()).分钟(d.分钟());
这个.ngModel=ev;
}
}
在.html文件中,我有:-

*

<mat-form-field>
        <input matInput placeholder="{{datePlaceHolder}}" [matDatepicker]="picker" [(ngModel)]="datePart" (ngModelChange)="datePartChange($event)"/>
        <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
        <mat-datepicker #picker></mat-datepicker>
    </mat-form-field><br/>
    
    <mat-form-field>
        <input matInput placeholder="{{timePlaceHolder}}" [format]="timeFormat"  readonly [(ngModel)]="timePart" (ngModelChange)="timePartChange($event)" [ngxTimepicker]="timepicker"/>
        <ngx-material-timepicker-toggle matSuffix [for]="timepicker"></ngx-material-timepicker-toggle>
        <ngx-material-timepicker [minutesGap]="minutesGap" #timepicker></ngx-material-timepicker>
    </mat-form-field>
*

但是,在控制台中有一个错误,如下所示:-

core.js:4197错误类型错误:无法读取未定义的属性“nativeElement” 在NgxMaterialTimepickerFaceComponent.decreaseClockHand(ngx material timepicker.js:1722) 在NgxMaterialTimepickerFaceComponent.setClockHandPosition(ngx material timepicker.js:1683) 在NgxMaterialTimepickerFaceComponent.ngOnChanges(ngx material timepicker.js:1564) 在NgxMaterialTimepickerFaceComponent.RememberChangeHistory和InvokeOnChangeShake(core.js:2131) 在callHook(core.js:3042) 在callHooks(core.js:3008) 在executeInitAndCheckHooks(core.js:2960) 在refreshView(core.js:7186) 在refreshComponent上(core.js:8325) 在refreshChildComponents上(core.js:6964)