我正在开发一个复合组件,必须对布局进行一些计算才能正常工作。 EL复杂的计算(实际上并不复杂但我不能通过EL执行它们)。 我可以专门为该复合组件创建一个ManagedBean吗?这实际上是关于这是否是好的实践,我想在尝试使用组件专用的managedbean之前我应该尝试很多方法。 如果可以,组件如何在呈现之前调用托管bean逻辑。假设它必须根据某些属性计算内部div的高度和宽度。这甚至可能吗?我想要在组件中封装执行此类计算等的所有复杂性。
答案 0 :(得分:1)
您可以将逻辑插入变量的getter(或者setter)中。
编写on on组件似乎只是为了执行计算。
一个。如果您需要从页面计算参数,则从页面传递。
B中。在渲染之前调用的动作或变量的实际getter中使用这些参数
public int getCalculatedAttribute() {
return width*height-100;
}
另一种方法是在呈现页面之前调用任何阶段的方法。