把手日期格式问题

Gil*_*ero 3 javascript jquery handlebars.js

我有我的属性的handlerbars模板

{{#each claimsHistory}}
  <td>
    {{lossDate}} 
  </td>
{{/each}}
Run Code Online (Sandbox Code Playgroud)

lossDate它是我的约会时间,它呈现如下2015-08-28T00:00:00

我想在没有时间的情况下将它显示为2015-08-28.

谢谢

sto*_*lli 12

这是写一个把手帮手的最佳时机!将此次修改添加到模板中:

{{#each claimsHistory}}
    <td>
        {{formatTime lossDate "MM-DD-YYYY"}} 
    </td>
{{/each}}
Run Code Online (Sandbox Code Playgroud)

然后在HandlebarsHelpers.js您的应用中包含的文件中:

Handlebars.registerHelper('formatTime', function (date, format) {
    var mmnt = moment(date);
    return mmnt.format(format);
});
Run Code Online (Sandbox Code Playgroud)

moment是一个用于操作日期的流行JavaScript库.此处显示的帮助程序接收您的日期和模板传递的格式字符串,创建一个时刻日期对象,然后根据您指定的格式字符串对其进行格式化.有关时刻的更多信息,包括如何获取各种格式,请访问:http://momentjs.com/docs/.

当然,您可以使用vanilla JS日期操作而不是Moment.js,但是如何实现帮助程序取决于您.


Sim*_*nde 5

您可以使用车把帮手。以下内容将帮助您实现目标。

  1. 在您的终端上运行以下命令以将把手助手添加到您的config.json中

    npm install --save handlebars-helpers
    
    Run Code Online (Sandbox Code Playgroud)
  2. 使用以下命令在您的app.js中导入车把帮助器

    var helpers = require('handlebars-helpers')();
    
    Run Code Online (Sandbox Code Playgroud)
  3. 然后在车把模板中,

    {{#each claimsHistory}}
       <td>
          {{moment lossDate format="YYYY-MM-DD"}} 
       </td>
    {{/each}}
    
    Run Code Online (Sandbox Code Playgroud)