2

我不知道为什么这不起作用:

<apex:repeat value="{!MyContacts}" var="c" >
    <c:ContactRowComponent contactLastName="{!c.LastName}"/>  
</apex:repeat>

(其中主控制器 MyContacts 返回一个 Contact 对象数组,而在组件上 contactLastName 被定义为 String 属性)

这给了我错误:

Literal value is required for attribute contactLastName in <c:ContactRowComponent> at line 25 column 27

似乎是说需要文字值而不是公式?我想做的事是不可能的,还是我做错了?

4

1 回答 1

2

我也遇到过这个问题。就我而言,这是因为我在组件属性中指定了默认属性,由于某种原因,您无法对使用公式的字段执行此操作。

例如,这将产生您在传递公式值时描述的错误:

<apex:attribute type="string" name="value" default="sometext" description="some name value" />

因此,如果您删除默认属性,错误将得到解决。让我知道这是否可以解决您的特定用例。

于 2011-07-13T01:20:57.627 回答