将Ember助手的输出绑定到Ember输入助手的值

时间:2015-02-26 17:15:54

标签: ember.js

我写了一个Ember / Handlebars助手来使用Moment.js格式化日期:

Ember.Handlebars.registerBoundHelper('formattedDate', function(date, format) {
    var formattedDate = moment(date).format(format);
    return new Handlebars.SafeString(formattedDate);
});

现在,我想与Ember输入助手一起使用它(如果startDate是范围内模型的属性):

{{input id="startDatePicker" class="form-control" value={{formattedDate startDate 'MMM D'}} required=true}}

但是这不起作用并抛出语法错误。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:2)

您可以通过使用子表达式来避免语法错误(请参阅有关子表达式here的更多信息)。

所以,你会这样做:

{{input id="startDatePicker" class="form-control" value=(formattedDate startDate 'MMM D')}}

此时你不会得到语法错误,但它仍然会表现得很奇怪。我建议你改为为格式化日期实现计算属性。请参阅我最近给出的以下答案,该答案应该为您提供一个良好的起点

https://stackoverflow.com/a/28774170/908842