2016-06-15 11 views
1

Neu an Lenker, ich habe einen Helfer registriert und ich kann nicht herausfinden, was scheint eine einfache Aufgabe: wie ein Ausdruck an Lenker Helfer übergeben.Passing Ausdruck zu Lenker benutzerdefinierte Helfer

Sagen wir:

Handlebars.registerHelper('or', function (v1, v2) { 
    return (v1 || v2) ? options.fn(this) : options.inverse(this); 
} 

Und wenn es mit:

{{#conditional @index this.warranty_id !== "DEFAULT_FACTORY" }} 

Natürlich ist es nicht, und ich kann nicht herausfinden, wie es funktioniert. Was ich brauche, ist, dass der übergebene Ausdruck einen booleschen Wert zurückgibt, um der v2-Wert innerhalb des Helfers zu sein.

Jede Hilfe wird geschätzt.

+0

Welche Version von Ember sind Sie? Sie sollten [Ember.Helper.helper] (http://emberjs.com/api/classes/Ember.Helper.html#method_helper) verwenden –

+0

@Kitler danke für Ihre Antwort, keine Glut, Lenker Node-Modul. – Guillermo

+0

@Guillermo: Es gibt kein '! ==' im Lenker aus der Box. Sie müssen einen benutzerdefinierten Helfer für den gleichen auch schreiben –

Antwort

1

Sie müssen einen helper schreiben, um nach !== zu suchen, und dann als Unterausdruck in Ihrem or Helper verschachteln.

OR Helfer

Handlebars.registerHelper('or', function (v1, v2) { 
    return (v1 || v2) ? options.fn(this) : options.inverse(this); 
} 

!== Helfer

Handlebars.registerHelper('ne', function (v1, v2) { 
    return (v1 !== v2); 
} 

und dann in der Vorlage:

{{#or @index (ne this.warranty_id "DEFAULT_FACTORY")}} 
Verwandte Themen