VisualForce: передать параметр пользовательскому компоненту внутри повторителя - PullRequest
2 голосов
/ 23 июля 2010

Я не могу понять, почему это не работает:

<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

Кажется, говорят, что требуется буквальное значение, а не формула?То, что я пытаюсь сделать, невозможно, или я делаю это неправильно?

1 Ответ

2 голосов
/ 13 июля 2011

Я тоже сталкивался с этой проблемой.В моем случае это было потому, что я указал атрибут по умолчанию в атрибуте компонента, который нельзя сделать для полей, которые по какой-то причине используют формулу.

Например, это приведет к ошибке, описанной вами при передаче значения формулы:

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

Поэтому, если вы удалите атрибут по умолчанию, ошибка будет устранена.Дайте мне знать, если это решит для вашего конкретного случая использования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...