firstnameを検索してユーザー情報のセットを取得しようとしています。これはfirstnameと予約日付を返します(mongoDBから、mongooseスキーマはdate:Dateを使用します)。 Firstnameはtype = textで、予約日はtype = dateです。日付は未定義となり、エラーメッセージはです。エラー:[ngModel:datefmt]予想される2017-11-06T16:00:00.000Zはとなります。私は他の質問/答えを読んでいる。なぜなら、type = dateはオブジェクトを期待しているが、JSONは文字列を返すからだ。AngularJS日付文字列対オブジェクトエラー
私はAngular JSの新機能ですが、提案された方法を試しましたが、結果はありませんでした。私は何が欠けているのか分からない。私のコードに基づいて、特定のポインタを感謝
HTML
<form name="updateBookingsForm" ng-repeat="booking in ctrl.bookings" novalidate>
<input name="firstname" type="text" ng-model="booking.firstname" class="form-control" required>
<input name="date" type="date" ng-model="booking.date" class="form-control" required>
</form>
コントローラ
self.searchAllBookings = function() {
paAppAPI.searchAllBookings(self.term).then(function (result) {
console.log(result); //returns array and date undefined
self.bookings = result;
}
}).catch(function (err) {
console.log(err);
if (err.status == 404) {
self.message = "No bookings found";
self.showMessage = true;
}
});
}
サービス
self.searchAllBookings = function (term) {
var defer = $q.defer();
$http.get("/api/booking?keyword=" + term).then(function (result) {
console.log(result); //returns array but date undefined
if (result.status == 200) {
defer.resolve(result.data);
}
else {
defer.resolve(null);
}
}).catch(function (err) {
console.log(err);
defer.reject(err);
});
return defer.promise;
}
サーバ
app.get("/api/booking?", function (req, res) {
console.log("Search booking > " + req.query.keyword);
var keyword = req.query.keyword;
Booking.find({
"firstname" : new RegExp('^'+keyword+'$', "i")
}, (err, result) => {
if (err) {
console.log(err);
}
res.status(200).json(result);
console.log(result);
// { _id: 5a1a4e1238dfaa65e5fa59a2,
// firstname: 'Emily',
// date: 2017-11-20T16:00:00.000Z,
// __v: 0 },
console.log(result[0].date); //2017-11-06T16:00:00.000Z
});
});
この行を追加した後、私は、私は日付を取得行うself.booking.dateをログコンソールが、それがサービスに渡されていない – miintea
は、uは、サービスまたはそれを表示するには、日付を通過したいです(日付は定義されていません) htmlで? –
感謝します!出来た!私は自分のコードで間違いを犯しました。あなたのFORステートメントは正しいです! – miintea