【问题标题】:How to use array.filter in Scriban?如何在 Scriban 中使用 array.filter?
【发布时间】:2021-04-21 13:45:43
【问题描述】:

我在.scriban 文件中创建了一个模板,但它似乎不起作用。

这是我要过滤的数组的sn-p:

{{~ somevar = SomeArray | array.filter sub(sv) | array.first ~}}

而应该调用的自定义函数是:

{{func sub(sv)
   ret sv.Code == "99"
end}}

它似乎调用了自定义函数,但我收到此错误:

Scriban.Syntax.ScriptRuntimeException: '<input>(2,12) : error : Cannot get the member sv.Code for a null object.'

我在这里做错了什么?

【问题讨论】:

    标签: templates render sitecore-sxa scriban


    【解决方案1】:

    我知道这真的很晚了,但我也在寻找如何使用 array.filter 的示例。

    您正在调用 sub(sv) 并将其返回值返回给 array.filter。相反,您需要将 sub 的“地址”传递给 array.filter。

    {{~ somevar = SomeArray | array.filter @sub | array.first ~}}
    

    这应该可行。

    【讨论】:

    • 感谢您的回答。这对我有用!
    猜你喜欢
    • 2017-08-28
    • 1970-01-01
    • 2021-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-25
    相关资源
    最近更新 更多