4

我目前正在从 Ember 1.8.1 升级到 Ember 1.13.9。我的应用程序有点老派,不使用 ember-cli(没有 es6 任何语法)。

如何正确替换已弃用的 Ember.Handlebars.registerBoundHelper:

Ember.Handlebars.registerBoundHelper('date-ago',function(date) {
  return moment.utc(date).fromNow();
});

会建议你

DEPRECATION: `Ember.Handlebars.registerBoundHelper` is deprecated. 
Please refactor to use `Ember.Helpers.helper`. 
[deprecation id: ember-htmlbars.register-bound-helper]

所以我想用 'Ember.Helper.helper' 替换 'Ember.Handlebars.registerBoundHelper' 就可以了,但是这些帮助器不再可用:“未捕获的错误:断言失败:一个名为 'date-ago' 的帮助器不能成立!”。

如何在没有 ES6 语法或 ember-cli 魔法的情况下在 Ember 2.0 中注册 htmlbars 助手?

4

1 回答 1

7

只需将其分配给应用程序:

App.FormatCurrencyHelper = Ember.Helper.helper(function(params, hash) {
  var cents = params[0];
  var currency = hash.currency;
  return currency + cents * 0.01;
});

//template
{{format-currency 75 currency="$"}}

jsbin在这里

于 2015-09-05T08:29:34.507 回答