uib-datepicker angular js 未显示特定格式的日期时间

Posted

技术标签:

【中文标题】uib-datepicker angular js 未显示特定格式的日期时间【英文标题】:uib-datepicker angular js not showing datetime with specific format 【发布时间】:2018-04-08 21:12:50 【问题描述】:

我正在使用 angular js 1.6 在 asp.net 核心应用程序中工作。

当我尝试在 ui datepikcher angular 中绑定具有特定格式的范围模型时,该值未显示在组件中。

我的模型中日期时间的格式是: 2017-10-25T12:53:18.833

我的日期选择器在 html 文件中的代码是:

<input id="dateDebut" type="text" 
  date-validator class="form-control" datepicker-popup-custom="dateFormat" 
  datepicker-options="dateOptions" ng-model="role.DateDebut" on-open-focus="false" 
  is-open="calendrierRole.dateDebut.opened" close-text="labels.FERMER"
  ng-required="true" />
<span class="input-group-btn">
  <button type="button" class="btn btn-default" 
    ng-click="openCalendrierRole('dateDebut')">
     <i class="glyphicon glyphicon-calendar"></i>
  </button>
</span>

但是当我的日期格式是:Fri Oct 27 2017 10:00:33 GMT+0200 (Central Europe Daylight Time) => 值显示正确。

【问题讨论】:

【参考方案1】:

2 个解决方案 A. 在输入中添加这个

uib-datepicker-popup="dd/MM/yyyy"

改变你想要的格式 B. 创建将输入值作为 Date 对象返回的角度服务

function getDate(date) 
 return new Date(date);
;

然后将服务“getDate”添加到输入中。 祝你好运

【讨论】:

我选择了第二种解决方案,但出现了这个错误:错误:ngModel:nonassign Non-Assignable Expression

以上是关于uib-datepicker angular js 未显示特定格式的日期时间的主要内容,如果未能解决你的问题,请参考以下文章

从 Karma 覆盖率报告中排除 angular.js、angular-ui-router.js、angular-mocks.js 等导入文件

angular.js学习手册

angular引入js的方法

Angular JS - 6 - Angular JS 常用指令

angular js模块,angular js控制器

angular.js 的angular.copy angular.extend angular.merge