Ember.js ember cli中makeBoundHelper和registerBoundHelper之间的差异

Ember.js ember cli中makeBoundHelper和registerBoundHelper之间的差异,ember.js,ember-cli,Ember.js,Ember Cli,我试图创建一个自定义帮助程序来格式化一个值,ember cli文档似乎表明我需要从我的帮助程序文件中导出makeBoundHelper,或者在导入以前创建的帮助程序函数时从app.js中导出registerBoundHelper 我对这一点的理解正确吗?或者可以从帮助文件中使用registerBoundHelper并使其正确注册 编辑 相关代码和错误信息如下: 只是将其向上推,使用registerBoundHelper会导致“未捕获类型错误:未定义不是函数” 在解决车把问题下,助手们似乎表示我

我试图创建一个自定义帮助程序来格式化一个值,ember cli文档似乎表明我需要从我的帮助程序文件中导出makeBoundHelper,或者在导入以前创建的帮助程序函数时从app.js中导出registerBoundHelper

我对这一点的理解正确吗?或者可以从帮助文件中使用registerBoundHelper并使其正确注册

编辑

相关代码和错误信息如下:

只是将其向上推,使用
registerBoundHelper
会导致“未捕获类型错误:未定义不是函数”

在解决车把问题下,助手们似乎表示我只能从app.js中使用registerBoundHelper,但不确定是这样还是我做错了

根据文件

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
is
makeBoundHelper
callback

感谢您的响应,在文档中看到了这一点,但在ember cli上下文中似乎得到了意外的结果,将很快更新为错误和代码示例。下面是刚刚使用
registerBoundHelper
结果向上推送的链接未捕获类型错误:未定义不是函数“UnderResolving Handlebar helpers似乎表明我只能从app.js中使用registerBoundHelper,但不确定是这样还是我做错了。感谢您的帮助。我想最好在
ember cli
中使用
makeBoundHelper
,因为它只在文件名为虚线的情况下注册帮助程序……如果您想使用
registerBoundHelper
,您可以在
app.js
中完成此操作,如您所述