AngularJS输入时间字符串

AngularJS input time string

本文关键字:字符串 时间 输入 AngularJS      更新时间:2023-09-26

我的数据库对象如下所示:

{ "_id" : { "$oid" : "5646ea1f83abfba81202f4c2"} , "zeit" : "671" , "name" : "nnnn" , "sprache" : "nnnnnn" , "__v" : 0}

在这几行代码中,我的号码将被转换为日期

     app.get("/rest/data/:id", function (req, res) {
            Person.findById(req.params.id, function (err, person) {
            person.zeit = minutesToDate(person.zeit);
            res.send(person);
        });
    });
});
 function minutesToDate(minutes) {
    var hours = Math.floor(minutes / 60);
    var minute = minutes % 60;
    var date = (new Date(1970, 0, 1, hours, minute, 0));
    console.log(date);
    return date;
}

现在我的对象看起来是这样的:

{__v: 0,_id: "5646ea1f83abfba81202f4c2",name: "nnnn",sprache: "nnnnnn", zeit: "1970-01-01T10:11:00.000Z"}

我想把它放在这个输入:

<input ng-model="controller.person.zeit" class="form-control" type="time"/>

但我从角度得到了这个错误:

Error: [ngModel:datefmt] http://errors.angularjs.org/1.4.7/ngModel/datefmt?p0=1970-01-01T10%3A11%3A00.000Z
    at Error (native)

我想这是因为我的日期对象是一个字符串。可能是问题吗?我该怎么修

您可以使用日期格式

此外时间格式

关于绑定到模板使用这个例子

角度时间模板

确实如此,如果您按照错误消息中的链接进行操作,您会看到需要一个Date。您必须处理字符串表示和日期格式之间的转换。我建议使用moment.js(http://momentjs.com)