3

「if」ブロックの機能を拡張するカスタム Handlebars ヘルパーを使用していました。

Ember 1.10 では、プロパティへのバインドを許可する Ember.Handlebars.bind プロパティがないため、これは機能しなくなりました....

Ember.Handlebars.registerHelper('ifCond', function (a, b, options) {
    return Ember.Handlebars.bind.call(options, contexts[0], a, options, true, function(result) {
        return result === b
    });
});

使用法は次のとおりです。

{{#ifCond property "value"}}
    {{some-other-component}}
{{else}}
    something other...
{{/ifCond}}

しかし、これは「未定義のプロパティ 'call'を読み取れません」というエラーを返します

ヘルパーで渡されたプロパティにバインドできる方法はありますか? 子ブロックを持つことをサポートしていないため、registerBoundHelper を使用できません...ヘルパーの代わりにコンポーネントを使用したかったのですが、{{else}} ブロックを使用できません...

ヘルパーのこのソリューションは、handlebars.js {{#if}} 条件の論理演算子から以前に取得されました

4

1 に答える 1