为什么以下代码会产生奇怪的输出(看起来像moment()。valueOf()返回0)
Since 7 days ago : {{(moment().valueOf() - 7*24*60*60*1000) | date:'yyyy-MM-dd' }}
返回
Since 7 days ago : 1969-12-25
答案 0 :(得分:2)
您可以使用时刻API:
moment().subtract('days', 7).format("YYYY-MM-DD")
工作jsfiddle:http://jsfiddle.net/D9UCF/1/
答案 1 :(得分:2)
这是因为:
时刻#valueOf只输出自以后的毫秒数 Unix Epoch,就像Date#valueOf。
实现目标的一种方法如下:
Since 7 days ago: <span ng-bind="sevenDaysAgo"></span>
$scope.sevenDaysAgo = moment(new Date(new Date().setDate(new Date().getDate() - 7))).format('YYYY-MM-DD');