Ich benutze Angular 1.6 und ich möchte direkt eine Zeichenfolge an einen Eingang vom Typ Datum binden, anstatt das Datum zu einem Datum zu konvertieren und dann an den Eingang binden. Der Grund ist, dass ich JSON (zusammen mit anderen Daten) vom Server bekomme und ich möchte keine intermediäre Variable nur für das Datum erstellen, ich möchte direkt den JSON verwenden, und somit kann ich meinen JSON so zurücksenden wie er ist wenn es Änderungen im Eingabefeld gibt und keine Notwendigkeit, ng-change und Datum zu konvertieren und es meine JSON, etc ... Ich habe plunkered mein Problem. HierWinkel Bind Bind Datum zum Eingangstyp Datum
ist die html:
<body ng-app="plunker" ng-controller="MainCtrl">
<form name="myForm">
<label for="exampleInput">Date input</label>
<input type="date" id="exampleInput" name="input" ng-model="date" placeholder="yyyy-MM-dd"/>
</form>
</body>
Und hier ist die javascript:
var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope) {
$scope.dateString = '2017-01-31';
$scope.date = new Date(2017, 11, 31);
});
Wenn ich die Eingabe in Variable $ scope.date binden es in Ordnung ist, aber es ist KO, wenn ich binden es zu Variable $ scope.dateString.
der richtige Weg ist, um die 'Date' Objekt zu verwenden, dann, wenn Sie wollen zeige dieses Datum an, du kannst einfach einen Filter darauf anwenden {{{Datum | Datum}} '. Sie können das Date-Objekt in den Service instanziieren, wenn Sie den JSON erhalten. – Hitmands
Sie können "ngModelController" -Funktionen verwenden und benutzerdefinierte Parser und Viewer https://docs.angularjs.org/api/ng/type/ngModel.NgModelController#custom-control-example – Icycool
@Hitmands: Danke, aber antwortet nicht meine brauche – Mouss