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

Binding the output from an Ember helper to the value of an Ember input helper

我写了一个 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}}

但这不起作用并引发语法错误。有什么办法吗?

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

所以,你会这样做:

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

此时你不会得到语法错误,但它仍然会表现得很奇怪。我建议您改为为格式化日期实施计算 属性。看下面我最近给的回答,应该给你一个很好的起点