使用
ng-model-options或
date是否可以设置时区以自动调整夏令时(即根据值在PST和PDT之间切换)?
例如:
<input type="date" ng-model="order.scheduled" ng-model-options="{ timezone: 'PST' }" /> <input type="time" ng-model="order.scheduled" ng-model-options="{ timezone: 'PST' }" />
仅在时间落入标准时间(非日光时间)时才有效.
解决方法
我想你需要moment.tz和帮手功能.奇怪,这不是Angular内置的:
// eg. getOffset(new Date,'America/Los_Angeles') => '-0700' // (date: Date,timezone: String): String scope.getOffset = function (date,timezone) { return moment .tz(date,timezone) .format('Z') .replace(':','') } ... <input type="time" ng-model="order.scheduled" ng-model-options="{ timezone: getOffset(order.scheduled,'America/Los_Angeles') }" />