Ember 2.0把手帮手不是函数吗?
问题描述:
一直在寻找几个小时的解决方案没有任何解决方案。我试图创建一个使用自定义的余烬车把帮手:Ember 2.0把手帮手不是函数吗?
Ember.Handlebars.helper('highlight', function(value, options) {
var escaped = Handlebars.Utils.escapeExpression(value);
return new Ember.Handlebars.SafeString('<span class="highlight">' + escaped + '</span>');
});
但出于某种原因,我得到Uncaught TypeError: Ember.Handlebars.helper is not a function
我读到,在灰烬2他们有一个新的方法:
// app/helpers/full-name.js
import Ember from "ember";
export default Ember.Helper.helper(function(params, hash) {
return params.join(' ');
});
但这是如果你正在使用ember-cli,如何注册helper而没有ember-cli?
答
在版本2中,他们删除了所有Ember.Handlebars接口调用。
使用新的帮手:
Ember.Helper.helper(function(params) {
});
或延长Ember.Helper
Ember.Helper.extend({
// This service name is only an example
compute(params, hash) {
return this.get('nameBuilder').build(params, hash.title);
},
rebuildName: Ember.observer('nameBuilder.isAnonymized', function() {
this.recompute();
})
});
理想情况下,你也应该使用烬,CLI,它更容易,因为我不知道如何编译并让它在没有它的情况下运行(这是一个非常好的构建系统,你可以使它与任何你想使用的后端服务一起工作
ember serve --proxy
Ember Cli
+0
感谢Dory为您提供帮助。我将开始转向烬 –
你使用的是烬2.0? –
是的,我将标题从2更新为2.0以使其更清晰 –
太好了,为什么不使用烬?这是推荐的做事方式? –