2014-01-23 49 views
2

在我的自定義幫助程序中,我該如何渲染一個本身使用助手的按鈕(本例中爲「動作」助手)?我試試這個:Ember/Handlebars:Custom helper rendering

Ember.Handlebars.registerBoundHelper('actionButtons', function(context, options) { 
    return new Handlebars.SafeString("<button {{action 'remove'}} class='destroy'>Delete</button>"); 
} 

但我只是得到一個非工作按鈕與格式錯誤的HTML。

回答

0

你會想在這個上使用部分而不是輔助器。

{{partial 'buttons'}} 

或者你也可以做

Ember.Handlebars.helper('actionButtons', Ember.View.extend({ 
    templateName: 'buttons' 
})); 

{{actionButtons}} 

而且模板需要有像

<button {{action 'remove'}} class='destroy'>Delete</button> 

或者你也可以做

Ember.Handlebars.helper('actionButtons', Ember.View.extend({ 
    template: Ember.Handlebars.compile('<button {{action 'remove'}} class='destroy'>Delete</button>') 
})); 

{{actionButtons}} 
+0

如果什麼渲染是一些偶然聲明評估爲真,例如if(context.content.get('userID')== App.currentUser.get('id')){ \t \t return Handlebars.compile(「「); \t}' – user2562424