使用Handlebars自定义助手方法来隐藏HTML

Using Handlebars custom helper method to hide HTML

本文关键字:隐藏 HTML 方法 Handlebars 自定义 使用      更新时间:2023-09-26

我有以下自定义Handlebars帮助器:

Handlebars.registerHelper('IsNewUser', function (userId) {
    return (userId < 1);
});

和以下HTML在我看来:

{{#IsNewUser Id}}
<div>
    <input name="IsActive" id="user-active" type="checkbox" checked />
    Active
</div>
{{/IsNewUser}}

我可以清楚地看到函数被击中,userId参数正确传递,返回类型为bool的true,但不是显示块,而是显示文本'true'。

我怎么能得到HTML块隐藏与车把没有错误出来?

在从这个StackOverflow问题中获得一些见解后,我能够修复它。将我的helper方法更改为:

Handlebars.registerHelper('IsNewUser', function (userId, options) {
    if (userId < 1)
        return options.fn(this);
    else
        return options.inverse(this);
});