2014-07-02 10 views
5

Sto provando a creare un helper personalizzato per formattare un valore, i documenti ember-cli sembrano indicare che ho bisogno di esportare makeBoundHelper dal mio file helper o registerBoundHelper dall'interno app.js durante l'importazione della funzione helper creata in precedenza.differenza tra makeBoundHelper e registerBoundHelper in ember-cli

La mia comprensione di questo è corretta? Oppure puoi utilizzare registerBoundHelper da un file di supporto e farlo registrare correttamente.

EDIT

codice e di errore relativo Info sotto:

https://github.com/ridget/transactions/blob/master/app/helpers/to-currency.js

Basta spinto che fino, utilizzando registerBoundHelper risultati in "TypeError Uncaught: undefined non è una funzione"

http://iamstef.net/ember-cli/ in manubri risolti gli helpers sembra indicare che posso utilizzare registerBoundHelper solo dall'app.j s ma non sono sicuro se questo è il caso o sto solo sbagliando.

risposta

5

Come da documentazione

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* 

Quindi, in pratica, sia fa stesso lavoro. La differenza è registerBoundHelper disponibile come pubblica. Anche i parametri sono diversi.

@method registerBoundHelper 
    @for Ember.Handlebars 
    @param {String} name 
    @param {Function} function 
    @param {String} dependentKeys* 

makeBoundHelper non prende nome l'aiutante. Potrebbe essere necessario registrarsi aiutante sul proprio chiamando

Ember.Handlebars.registerHelper(name, boundFn); 

boundFn è makeBoundHelper callback

+0

grazie per la risposta, avevano visto questo nella documentazione, ma nel contesto brace-cli sembrano avere un risultato inatteso , si aggiornerà a breve con l'errore e l'esempio del codice. – ridget

+0

ecco il link https://github.com/emberjs/ember.js/blob/071b4bb6aad44100dc74ef8e1c79562e57038e7d/packages/ember-handlebars/lib/ext.js#L355 – thecodejack

+0

ok..letme sapere una volta aggiornato – thecodejack