4

我有以下情况:

<cc:interface>
    <cc:attribute name="someValue" />
</cc:interface>

<cc:composite>
    <x:someComponent>
        <span>#{cc.attrs.someValue}</span>
    </x:someComponent>
</cc:composite>

因此,在我的复合组件内部,我正在调用其他一些复合组件并尝试将给“主”复合组件的参数传递给内部复合组件。

这失败了,因为在x:someComponent标签内部,cc隐式对象似乎引用了 this x:someComponent

一种解决方法是为创建一个临时字段,x:someComponent因此可以通过以下方式实现:

<x:someComponent passthroughField="#{cc.attrs.someValue}">
    <span>#{cc.attrs.passthroughField}</span>
</x:someComponent>

然而,这是非常丑陋和不方便的。

解决这个问题的任何其他方法?

4

1 回答 1

1

解决此问题的一种方法是使用ui:param如下:

<ui:param name="foo" value="cc.attrs.someValue" />
<x:someComponent>
    <span>#{foo}</span>
</x:someComponent>

在另一个问题中查看更多信息。

于 2011-01-04T18:27:18.307 回答