2

Handlebars 中有没有办法检查我们尝试注册的助手是否已经存在?

我有一个案例,我正在动态注册一个助手,所以如果它已经在那里,不想再次注册..

4

1 回答 1

4

AFAIK 没有官方记录的方式来确定帮助者是否已注册。但是,助手存储在一个简单的查找表中,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 回答