html - 嵌套车把问题
问题描述
所以我创建了一个自定义手柄栏,可以像这样检查相等性
HandlerBars.registerHelper('ifEquals', (arg1, arg2, options) => {
if (arg1 == arg2) {
return options?.fn(this);
}
return options?.inverse(this);
});
我基本上像这样在 html 中使用它 {{#ifEquals property "string"}}
现在在这个块中,我有一个要渲染的文本和另一个#if 句柄栏。
问题是它在 if 句柄之前呈现文本,但即使它应该返回一个属性,它也不会调用 if 句柄,而是转到 if 句柄中的 {{else}}
解决方案
我已经通过使用另一个这样写的车把解决了这个问题
HandlerBars.registerHelper('equals', (arg1, arg2, options) => {
return arg1==arg2;
});
在主车把(#ifEquals)中,我将其更改为 {{#if (equals field "string")}} 其余部分保持不变并且有效。
推荐阅读
- python - 按子字符串聚合 json 元素
- mongodb - 如何为嵌入文档编写 mongo 查询
- sql - DB2 - 查询一次更新 10000 行
- postgresql - 将 CSV 文件数据导入 PostgreSQL 表自动化
- jquery - AJAX 调用仅运行一次,而 .click() 事件正常工作
- jquery - 将表格框更改为输入字段
- firebase - Geofire 是否支持离线持久化?
- c - 如何输入5个数字并检查它们在C中是奇数还是偶数
- html - 使用 Bootstrap 4 的 Bootstrap-select jQuery 插件不起作用
- c - 英特尔 AVX 的执行速度比标量代码慢