我正在创建一些正在使用图像组件的页面。如果图像不是由用户上传或图像不存在,我想把 mysitelogo.jpg(作为默认图像)。
以下是现有代码
String imgPath = properties.get(ybUrl, String.class);
if (imgPath != null && !imgPath.equals("")) {
%><div class="image"><img src="<%= imgPath %>" alt="" ></div><%
}
我正在创建一些正在使用图像组件的页面。如果图像不是由用户上传或图像不存在,我想把 mysitelogo.jpg(作为默认图像)。
以下是现有代码
String imgPath = properties.get(ybUrl, String.class);
if (imgPath != null && !imgPath.equals("")) {
%><div class="image"><img src="<%= imgPath %>" alt="" ></div><%
}
@Mayank,
Sling ValueMap允许在检索属性时指定要转换返回值的类或默认值。将现有代码替换为:
String imgPath = properties.get(ybUrl, "/some/path/mysitelogo.jpg");
%><div class="image"><img src="<%= imgPath %>" alt="" ></div><%
这会将默认值返回给您的图像(在您更正路径之后)。由于 ValueMap 会在检索到的值为 null 时自动返回默认值,因此您不再需要进行 null 检查。