如果这看起来很蠢,请原谅我,因为它肯定看起来很蠢。
我正在处理基本上像这样的其他人的代码:
{@select key=name}
{@eq value="Alice"}
{@eq value="ALICE"}
{@eq value="alice"}
{@any} Your name is Alice! {/any}
{@none} Your name isn't Alice! {/none}
{/select}
有什么方法可以整合那些非常相似的
{@eq}
语句?并发症:
这些值来自客户填充的数据库。我无法在该位置与到达模板的时间之间进行清理。
我不容易添加支持助手来处理不区分大小写的问题。有可能,但是我希望语言本身首先有解决方案。
最佳答案
经过团队的讨论,最好的方法似乎是添加一个除尘器而不是一个帮助器。这样的事情可以添加到全局的尘埃中:
dust.filters.lc = function lowercaseFilter(str) {
if (typeof str === 'string') {
return str.toLowerCase();
}
return str;
};
然后,您可以执行以下操作:
{@eq key="{name|lc}" value="alice"}Your name is most definitely Alice.{/eq}
关于javascript - 如何在Dust.js中检查不区分大小写的值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35438743/