我认为#replace助手有一个错误,如果" haystack" param(输入字符串)不包含"针" param(要搜索的字符串),输出是空字符串而不是原始字符串。如果没有匹配,我希望帮助器返回原始字符串。
例如,这将返回一个空字符串:
{{!-- where value="sometext", as in: {"value":"sometext"} --}}
{{#replace " " value}}+{{/replace}}
如果这是预期的行为,当我不知道输入字符串是否包含我想要替换的值时,如何调用#replace?
请注意,此示例按预期工作:
{{!-- where value="some text", as in: {"value":"some text"}
this correctly returns "some+text" --}}
{{#replace " " value}}+{{/replace}}
答案 0 :(得分:0)
我通过在Cornerstone主题中找到一个示例,弄清楚#replace助手的正确用法是什么。当确实没有匹配是预期的行为时,它看起来像返回一个空字符串,并且为了处理不匹配的情况,需要{{else}}。
因此,修改我的原始示例,这将是正确的用法:
{{#replace " " value}}+{{else}}{{value}}{{/replace}}