【发布时间】:2017-01-16 09:33:42
【问题描述】:
我遇到了一种情况,我必须根据时间更改路径。
我将有两个日期变量,CheckInStartDate 和 CheckInEndDate,它们将来自 API。
当前时间为系统日期时间。
路径必须在两种情况下改变。
-
CheckInStartDate当前时间减去 1 小时 -
CheckInEndDate加上当前时间的 1 小时。
这是我目前拥有的代码。
$scope.checkIn = function() {
var ONE_HOUR = 60 * 60 * 1000; /* ms */
$scope.checkInStartDate= 01/16/2017 09:06:00 AM;
$scope.checkInEndDate= 01/16/2017 11:06:00 AM;
var checkInStartDate=$scope.checkInStartDate;
var checkInEndDate=$scope.checkInEndDate;
var currentDate = new Date();
var checkinStartDate=new Date(checkInStartDate);
var checkinEndDate = new Date(checkInEndDate);
if ((checkinStartDate.getTime()) > (currentDate.getTime() - ONE_HOUR) ||
(checkinEndDate.getTime()) < (currentDate.getTime() + ONE_HOUR)) {
$location.path('/checkIn')
}
else{
alert("cannot checkin");
}
}
【问题讨论】:
-
您的问题到底是什么?您的代码在我看来大部分都很好,除了最初设置
$scope.checkInStartDate的方式是语法错误(结束日期也是如此)。 -
您忘记了第 3 行和第 4 行中日期时间的引号。
-
不能用momentjs.com吗?它会使修改日期更容易吗?
-
您确定逻辑“OR”是正确的并且不应该是“AND”吗?
-
除非您告诉我们您要达到的目标,否则我们无法检查任何内容。请定义预期的行为。
标签: javascript angularjs