2

ハンドルバーに、登録しようとしているヘルパーが既に存在するかどうかを確認する方法はありますか?

ヘルパーを動的に登録している場合があるため、既に存在する場合は再度登録したくありません..

4

1 に答える 1

4

私の知る限り、ヘルパーが登録されているかどうかを確認する公式の文書化された方法はありません。ただし、ヘルパーは単純なルックアップ テーブルに格納されているHandlebars.helpersため、次のようにすることができます。

if(!('helper' in Handlebars.helpers))
    Handlebars.registerHelper('helper', function() { ... });

デモ: http://jsfiddle.net/ambiguous/QM7QD/1/

おそらくHandlebars.helpers、テスト スイート、アップグレード チェックリスト、またはHandlebars.helpersそこにあることが保証されていないものにチェックを追加することをお勧めします。

余談ですが、ヘルパーの再登録は問題ないと思います。新しいヘルパーは古いヘルパーを上書きするので、両方のヘルパーが同じものであっても問題ありません。もちろん、同じ名前の異なるヘルパーが複数ある場合は、ヘルパーを二重登録するよりも大きな問題が発生します。

于 2013-05-02T15:50:52.830 に答える