我试图创建一个自定义帮助器来格式化值,ember-cli文档似乎表明我需要从我的帮助文件中导出makeBoundHelper,或者在导入之前从app.js中导出registerBoundHelper创建了辅助函数。
我对此的理解是否正确?或者你可以在帮助文件中使用registerBoundHelper并让它正确注册。
修改
以下相关代码和错误信息:
https://github.com/ridget/transactions/blob/master/app/helpers/to-currency.js
只需将其推高,使用registerBoundHelper
结果"未捕获的TypeError:undefined不是函数"
http://iamstef.net/ember-cli/在解决把手帮助下似乎表明我只能在app.js中使用registerBoundHelper,但不确定是否是这种情况或我只是做错了。
答案 0 :(得分:5)
根据文档
makeBoundHelper是
A (mostly) private helper function to `registerBoundHelper`. Takes the
provided Handlebars helper function fn and returns it in wrapped
bound helper form.
@private
@method makeBoundHelper
@for Ember.Handlebars
@param {Function} function
@param {String} dependentKeys*
所以基本上两者都做同样的工作。差异registerBoundHelper
可以公开获得。参数也不同。
@method registerBoundHelper
@for Ember.Handlebars
@param {String} name
@param {Function} function
@param {String} dependentKeys*
makeBoundHelper没有取助手的名字。您可能需要通过调用
来自行注册帮助程序Ember.Handlebars.registerHelper(name, boundFn);
boundFn
是makeBoundHelper
回调