2017-01-20 1 views
2

Ich versuche, den ng2-Datepicker zu verwenden, um ein Datum auszuwählen und es anschließend in einer Tabelle anzuzeigen. Ich habe das Problem, dass die Bindung an mein gewähltes Datum nicht funktioniert. Ich vermute, dass es etwas mit der Formatoption zu tun hat, die ich gemacht habe (DD.MM.YYYY). In meinem html, ich habe diesen Code:ng2-datepicker mit Formatoption und ngModel Rückgabe [Objekt Objekt]

<ng2-datepicker [(ngModel)]="date" [options]="datepickeroptions"></ng2-datepicker> 

datepickeroptions mit Typoskript ist wie folgt:

this.datepickeroptions = { 
    format: "DD.MM.YYYY", 
    locale: "de", 
}; 

Ich habe versucht, das Datum Variable als Datum und als Zeichenfolge zu initialisieren, aber keiner von ihnen arbeitete. Ich bekomme nur [object Object] als Wert von ngModel, obwohl der Wert im Eingabebehälter ok aussieht. Vielen Dank im Voraus für Ihre Hilfe.

object Object in parent container

Antwort

1

Endlich kam ich zu einer Lösung! Zuerst fand ich heraus, dass die Json Pipe mir die richtigen Eigenschaften gegeben hat. Dann habe ich eine deadlineinput auf meine .ts Datei des Typs jeder und initialisiert es so in der OnInit:

this.deadlineinput = { 
     formatted: '' 
    }; 

hier könnte man auch die anderen Optionen hinzuzufügen er zugreifen möchte (die json und auf der html das wie folgt aussieht:

{ "day": "05", "month": "01", "year": "2017", "formatted": "05.01.2017", "momentObj": "2017-01-04T23:00:00.000Z" } 

ich dies auf der .hmtl setzen:

<ng2-datepicker [(ngModel)]="deadlineinput" [options]="datepickeroptions"></ng2-datepicker> <label> selected date is: {{deadlineinput.formatted}} </label> 

ich weiß, dass es nicht so sein sollte, und ich öffnete eine Ausgabe für die aktuelle Version auf gi Thub, aber zumindest ist es ein Workaround, der mir jetzt hilft.

+0

danke dafür. funktioniert jetzt gut :) –

0

Sie Bananenkiste Notation stattdessen nur Box verwenden verwenden sollten:

[(ngModel)]="date" 
  • (): aus dem Blickfeld Daten
  • [] binden zu steuern: von Steuerdaten anzuzeigen bind
  • [()]: 2-Wege-Datenbindung
+0

Entschuldigung, das war ein Fehler wegen herumprobieren oder kopieren. In meinem Projekt ist die Bananenkastennotation und funktioniert immer noch nicht. Ich habe den obigen Code angepasst. Könnte es etwas anderes sein? – Nadine

+0

Nur versucht, die Optionen und alles zusätzlich zu kommentieren, ich habe sogar das Beispiel von https://www.npmjs.com/package/ng2-datepicker kopiert, aber es funktioniert nicht, ich bekomme immer "Objekt Objekt" mit "Option A "erklärt auf der Seite. Funktioniert es für irgendjemanden? – Nadine

Verwandte Themen