0

我该如何使用f:if来查看图像是否存在?

我尝试了以下方法但没有成功:

{f:if(condition: page.files.0, then: ' style="background-image:url({f:uri.image(image:page.files.0, width:300c, height:200c)}"')}

<f:if condition="{page.files.0}">
    style="background-image:url({f:uri.image(image:page.files.0, width:300c, height:200c)}"
</f:if>

如果有图像,它会起作用,但在没有图像时会破坏元素。

4

1 回答 1

1

当我想将图像 url 添加到 style 属性时,我通常会这样做:

<f:if condition="{page.files.0}">
    <f:variable name="imageUri" value="{f:uri.image(
        image: page.files.0,
        width: '300c',
        height: '200c')}"/>
</f:if>

<div style="background-image: url('{imageUri}');">
   ...
</div>

如果图像不存在,那只会将其留空。尽管我经常遇到“其他”情况,但我使用我的自定义视图助手之一来生成占位符图像。

于 2019-10-16T09:44:46.557 回答