I have a component declared like follows, it receives an Input data. I'm using Primeng calendar Component, the component it's created but I'm not getting access to the data to pass it to the template I'm receiving an error on [(ngModel)]="data.DateValue", it's like DataValue don't exist already when accessing it
What Am missing?
How to set an auxiliar value like ( myDateValue: Date ) of type Date after the input data is received?
Thanks in advance.
import { Component, Input} from '@angular/core';
import { DataType } from "../model/dataType";
@Component({
selector: 'exempleComponent',
template: '<p-calendar *ngIf="data" [(ngModel)]="data.DateValue" dateFormat="dd.mm.yy"></p-calendar>'
})
export class ExempleComponent {
@Input() data: DataType;
constructor() { }
}
Parent Component:
import { Component, OnInit } from '@angular/core';
import { WebService } from './app.service';
import { MasterDataType } from "../model/masterDataType";
@Component({
selector: 'my-app',
template: '<div> <exempleComponent [data]="theData.DataType" ><exempleComponent/> </div>',
providers: [WebService]
})
export class AppComponent implements OnInit {
errorMessage: string;
theData: MasterDataType;
constructor(private dataService: WebService) {}
ngOnInit() { this.getDataFromService(); }
getDataFromService() {
this.dataService.getData ()
.subscribe(
myData => this.theData = myData,
error => this.errorMessage = <any>error);
}
}