ember.js - How do I translate #if type handlebars helpers from ember 1.7 to ember-cli (2.3) -


i have registered handlebars helper in ember1.7 right now.

var = ember.handlebars.get; ember.handlebars.registerhelper('ifcond', function(val1, val2, options) {     var context = (options.fn.contexts && options.fn.contexts[0]) || this;     var val1 = get(context, val1, options.fn);     if (val1 == val2) {         return options.fn(this);     } else {         return options.inverse(this);     } }); 

the idea pretty simple: take first parameter context property, second parameter actual value, , return boolean based on equality. so, example, if have property age on object user,

{{#ifcond user.age "22" }}   <h2> twin twos!</h2> {{/ifcond}} 

would snippet use render h2 element when condition fulfilled.

however, cannot figure out how translate such helper ember-cli.

i've considered making component, need conditional, not renders specific set of dom elements. feel i'm missing something. how able make {{#ifcond}} work in ember 2.3?

edit: found helper creation doc let me implementation:

import ember 'ember';  export function ifcond(params/*, hash*/) {     return (params[0] === params[1]);   // return params; }  export default ember.helper.helper(ifcond); 

however, work, have write (in template)

{{#if (ifcond 1 1)}}   yep {{/if}} 

is there still way use handlebar helper in ember 1.7 ?

first of there no more block helpers:

legacy handlebars helpers removed in favor of ember.helper api. api not provide mechanism helpers take block, introduce support nested helpers can used in concert built-in helpers (like {{#if}} , {{#each}}) achieve same ends.

it recommended use helpers did in example ({{#if (ifcond 1 1)}}). if decide go route recommend using ember-truth-helpers addon. using can throw out own helper , use this:

{{#if (eq user.age "22") }}   <h2> twin twos!</h2> {{/if}} 

i find truth helpers flexible , easy understand , recommend using them.

alternatively if want simulate old helper need use component that, i've made twiddle illustrate how it.


Comments

Popular posts from this blog

authentication - Mongodb revoke acccess to connect test database -

r - Update two sets of radiobuttons reactively - shiny -

ios - Realm over CoreData should I use NSFetchedResultController or a Dictionary? -