【问题标题】:Localising the date value in Angular Material datepicker在 Angular Material 日期选择器中本地化日期值
【发布时间】:2016-05-30 02:21:39
【问题描述】:

我正在使用 Angular Material 日期选择器。我的问题是,当我向 Web Api 控制器发送日期时,我得到的日期小于我在表单中选择的日期。我认为这是因为日期值没有被本地化。我想知道的是如何localize angular js

中的date

HTML:

<div ng-controller="AppCtrl" style='padding: 40px;' ng-cloak>
  <md-content>
    <h4>Standard date-picker</h4>
    <md-datepicker ng-model="myDate" md-placeholder="Enter date"></md-datepicker>
</md-content>
</div>

控制器:

angular.module('datepickerBasicUsage',
    ['ngMaterial', 'ngMessages']).controller('AppCtrl', function($scope) {
  $scope.myDate = new Date();
  $scope.minDate = new Date(
      $scope.myDate.getFullYear(),
      $scope.myDate.getMonth() - 2,
      $scope.myDate.getDate());
  $scope.maxDate = new Date(
      $scope.myDate.getFullYear(),
      $scope.myDate.getMonth() + 2,
      $scope.myDate.getDate());
  $scope.onlyWeekendsPredicate = function(date) {
    var day = date.getDay();
    return day === 0 || day === 6;
  }
});

【问题讨论】:

    标签: javascript angularjs datepicker angular-material


    【解决方案1】:

    要获得跨浏览器的一致结果,最好使用moment.js

    否则你也可以使用toLocaleString()

    最后,您还可以编写自己的服务,该服务将获取 UTC 时间并根据用户区域设置应用必要的偏移量。

    【讨论】:

    • 如果能用上面的代码给个demo或者例子就好了
    • 对于 moment.js ,您可以浏览主站点的文档。对于 toLocaleString,请检查此链接:link
    • 将 toLocalString() 方法与 $scope 对象一起使用吗?
    • 如果你想要本地化的日期是:$scope.myDate,那么你可以使用 toLocaleString 就可以了。
    • 另请查看:material.angularjs.org/latest/api/service/$mdDateLocaleProvider。显然有一个角度服务来处理语言环境。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-13
    • 1970-01-01
    • 1970-01-01
    • 2018-03-08
    • 1970-01-01
    • 2011-10-16
    相关资源
    最近更新 更多