是否可以执行 bool.parse 或类似操作?
简化的 Scriban 模板来演示问题:
var template = Template.Parse("{{ $parsed = foo | bool.parse }}");
var result = template.Render(new { foo = "True"});
这会引发错误: (1,25) : error : Object bool is null
是否可以执行 bool.parse 或类似操作?
简化的 Scriban 模板来演示问题:
var template = Template.Parse("{{ $parsed = foo | bool.parse }}");
var result = template.Render(new { foo = "True"});
这会引发错误: (1,25) : error : Object bool is null
不幸的是,没有办法使用内置函数解析布尔值。一种解决方法是执行以下操作:
var template = Template.Parse("{{ if foo | string.downcase == `true`; $parsed = true; end; $parsed; }}");
var result = template.Render(new { foo = "True"});
这是 github 中问题的链接:https ://github.com/lunet-io/scriban/issues/243 。