在Salesforce Apex中动态引用静态资源名称
我正在尝试循环文章类别,并根据Salesforce Apex中的标题为每个类别提供图标图像。我不想硬编码每个静态资源名称。我的想法是为每个循环迭代创建一个字符串变量,并通过该变量值引用匹配的静态资源名称。所以我看了一下关于这个问题的报告,它似乎没有按照预期的方式工作在Salesforce Apex中动态引用静态资源名称,salesforce,apex,Salesforce,Apex,我正在尝试循环文章类别,并根据Salesforce Apex中的标题为每个类别提供图标图像。我不想硬编码每个静态资源名称。我的想法是为每个循环迭代创建一个字符串变量,并通过该变量值引用匹配的静态资源名称。所以我看了一下关于这个问题的报告,它似乎没有按照预期的方式工作 <knowledge:categoryList categoryVar="category" categoryGroup="Help" rootCategory="Using_{!selectedCategory}" leve
<knowledge:categoryList categoryVar="category" categoryGroup="Help" rootCategory="Using_{!selectedCategory}" level="1">
<apex:variable var="iconSource" value="pkb_{!selectedCategory}_{!category.name}" />
<a href="#" class="item">
<div class="box-title">
<h3>{!category.label}</h3>
</div>
<apex:image value="{!$Resource[iconSource]}" />
</a>
</knowledge:categoryList>
如果您有内部结构类似于以下的静态资源,您会想到它通常是如何完成的吗?:
/js/...
/css/...
/img/...
您可以使用以下构造访问静态资源项:
{!URLFOR($Resource.resourceName, 'img/imageName.jpg')}
因此,对于apex:image标记,它将如下所示:
<apex:image url="{!URLFOR($Resource.resourceName, 'img/imageName.jpg')}" width="50" height="50"/>
如果您有内部结构如下的静态资源:
/js/...
/css/...
/img/...
您可以使用以下构造访问静态资源项:
{!URLFOR($Resource.resourceName, 'img/imageName.jpg')}
因此,对于apex:image标记,它将如下所示:
<apex:image url="{!URLFOR($Resource.resourceName, 'img/imageName.jpg')}" width="50" height="50"/>
您的意思是我需要上传一个.zip
静态资源,并使用我的iconSource
变量引用其内部结构吗?是的,这是Salesforce中此类情况的常用方法。你可以在SF文档中找到更多信息-嗯,你知道,逻辑工作正常,但是它在我的url末尾添加了额外的orgId
param,所以我得到了404返回…'获取404(未找到)”,但我只是将其称为
,它可以与静态资源中的缓存控制字段值相关。您的意思是我需要上载.zip
静态资源,并使用iconSource
变量引用其内部结构吗?是的,这是Salesforce中此类情况的常用方法。你可以在SF文档中找到更多信息-嗯,你知道,逻辑工作正常,但是它在我的url末尾添加了额外的orgId
param,所以我得到了404返回…'GET 404(Not Found)”,但我只是将其称为
,它可以与静态资源中的缓存控制字段值相关。