这是我的uebersetzer.service.js:
module.exports = function (app, Uebersetzer) {
app.post('/rest/uebersetzer', function (req, res) {
var uebersetzer = req.body;
console.log("before" + uebersetzer.zeit);
uebersetzer.zeit = timeToMinutes(uebersetzer.zeit);
console.log("after" + uebersetzer.zeit);
Uebersetzer.create(uebersetzer, function (err, result) {
res.json(result);
});
}
});
});
app.get("/rest/uebersetzer/:id", function (req, res) {
Uebersetzer.findById(req.params.id, function (err, uebersetzer) {
console.log("get uebersetzer by id before" + uebersetzer.zeit);
uebersetzer.zeit = minutesToDate(uebersetzer.zeit);
console.log("get uebersetzer by id " + uebersetzer.zeit);
res.send(uebersetzer);
});
});
function timeToMinutes(time) {
var hours = time.getHours * 60;
var minutes = time.getMinutes;
time = hours + minutes;
console.log(time);
return time;
}
function minutesToDate(minutes) {
var hours = Math.floor(minutes / 60);
var minute = minutes % 60;
var date = new Date(1, 1, 1970, hours, minute, 00);
console.log(date);
return date;
}
};
Uebersetzer.controller.js
(function () {
angular
.module("PassportApp")
.controller("UebersetzerController", UebersetzerController);
function UebersetzerController(UebersetzerService) {
var vm = this;
vm.addUebersetzer = addUebersetzer;
vm.removeUebersetzer = removeUebersetzer;
vm.selectUebersetzer = selectUebersetzer;
vm.updateUebersetzer = updateUebersetzer;
vm.uebersetzer = {};
function updateUebersetzer(uebersetzer) {
UebersetzerService.update(uebersetzer, function (response) {
findAllUebersetzers(setAllUebersetzer);
});
}
function selectUebersetzer(uebersetzerId) {
UebersetzerService.findUebersetzerById(uebersetzerId, function (response) {
vm.uebersetzer = response;
});
}
function removeUebersetzer(uebersetzerId) {
UebersetzerService.removeUebersetzer(uebersetzerId, function (response) {
findAllUebersetzers(setAllUebersetzers);
});
}
function addUebersetzer(newUebersetzer) {
UebersetzerService.createUebersetzer(newUebersetzer, function (response) {
findAllUebersetzers(setAllUebersetzers);
});
}
function findAllUebersetzers(callback) {
UebersetzerService.findAllUebersetzers(callback);
}
function setAllUebersetzers(uebersetzers) {
vm.uebersetzers = uebersetzers;
}
findAllUebersetzers(setAllUebersetzers);
}
})();
Uebersetzer.html
<h1>Uebersetzer</h1>
<table class="table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Sprache</th>
<th>Zeit</th>
</tr>
<tr>
<td><input ng-model="controller.uebersetzer.name" class="form-control" placeholder="Name" type="text"/></td>
<td><input ng-model="controller.uebersetzer.sprache" class="form-control" placeholder="Sprache" type="text"/>
<td><input ng-model="controller.uebersetzer.zeit" class="form-control" placeholder="Zeit" type="time"/>
<button ng-click="controller.addUebersetzer(controller.uebersetzer)" class="btn btn-primary">
<span class="glyphicon glyphicon-plus"></span>
</button>
<button ng-click="controller.updateUebersetzer(controller.uebersetzer)" class="btn btn-success">
<span class="glyphicon glyphicon-ok"></span>
</button>
</td>
</tr>
</thead>
<tbody>
<tr ng-repeat="uebersetzer in controller.uebersetzers">
<td>{{uebersetzer.name}}</td>
<td>{{uebersetzer.sprache}}</td>
<td>{{uebersetzer.zeit|minDate|date:'HH:mm'}}</td>
<td>
<button ng-click="controller.removeUebersetzer(uebersetzer._id)" class="btn btn-danger">
<span class="glyphicon glyphicon-remove"></span>
</button>
<button ng-click="controller.selectUebersetzer(uebersetzer._id)" class="btn btn-info">
<span class="glyphicon glyphicon-pencil"></span>
</button>
</td>
</tr>
</table>
我有&#34; app.post&#34;有两个控制台命令。 console.log在我的日期之前显示我(&#34;在1970-01-01T00之前:11:00.000Z&#34;),但转换后它只显示NaN。我的角色是timeToMinutes()。
在&#34; app.get&#34;会议记录来自数据库,我将其更改为日期。我的两个给了console.log&#34;在100&#34;之前通过id获取uebersetzer和#34;获取uebersetzer by id Sun June 24 1906 01:40:00 GMT + 0200(中欧夏令时)&#34;,但它不在html接受的输入字段中,尽管其他数据是从字段中的数据库(名称和sprache)写。我希望它不是太多代码或太少。我为我糟糕的英语道歉。
答案 0 :(得分:0)
timeToMinutes函数内部存在错误。 getHours
和getMinutes
是函数,因此您需要使用()
调用函数。它应该是这样的:
function timeToMinutes(time) {
var hours = (new Date(time)).getHours() * 60;
var minutes = (new Date(time)).getMinutes() ;
time = hours + minutes;
console.log(time);
return time;
}