查询车把中是否有块助手和自定义助手
Query on if block helper and custom helper in handlebars
我无法在车把模板上执行以下代码。能否请您指出以下代码中的错误?
{{#if (isGreen PARAM1 PARAM2)}}
<td scope="col">GREEN</td>
{{/if}}
其中 isGreen
是自定义注册助手,如下所示:
Handlebars.registerHelper('isGreen', function (PARAM1, PARAM2)
{
//SOME STEPS
return true;
}
我上面的意图是打印 if
块中的内容,如果只有 registerHelper returns true
.
我收到以下错误:
Uncaught TypeError: Cannot read property 'includeZero' of undefined
除非我遗漏了一些你不能链接助手的东西:你不能在另一个助手中调用助手。 #if 是一个助手,isGreen 是另一个助手。
您可以做的是将 #if 逻辑放入您的自定义助手中。
您的 html 将如下所示:
{{#isGreen PARAM1 PARAM2)}}
<td scope="col">GREEN</td>
{{/isGreen}}
你的脚本是这样的:
Handlebars.registerHelper('isGreen', function (PARAM1, PARAM2, options) {
// Some steps where you'll set the doDisplay variable
// accordingly with your logic
if (doDisplay) {
// Your condition is met display something
return options.fn(this);
} else {
// Your condition isn't met display nothing
return "";
}
}
我无法在车把模板上执行以下代码。能否请您指出以下代码中的错误?
{{#if (isGreen PARAM1 PARAM2)}}
<td scope="col">GREEN</td>
{{/if}}
其中 isGreen
是自定义注册助手,如下所示:
Handlebars.registerHelper('isGreen', function (PARAM1, PARAM2)
{
//SOME STEPS
return true;
}
我上面的意图是打印 if
块中的内容,如果只有 registerHelper returns true
.
我收到以下错误:
Uncaught TypeError: Cannot read property 'includeZero' of undefined
除非我遗漏了一些你不能链接助手的东西:你不能在另一个助手中调用助手。 #if 是一个助手,isGreen 是另一个助手。
您可以做的是将 #if 逻辑放入您的自定义助手中。
您的 html 将如下所示:
{{#isGreen PARAM1 PARAM2)}}
<td scope="col">GREEN</td>
{{/isGreen}}
你的脚本是这样的:
Handlebars.registerHelper('isGreen', function (PARAM1, PARAM2, options) {
// Some steps where you'll set the doDisplay variable
// accordingly with your logic
if (doDisplay) {
// Your condition is met display something
return options.fn(this);
} else {
// Your condition isn't met display nothing
return "";
}
}