Book of Vaadin和Vaadin培训课程都建议使用com.vaadin.ui.CustomComponent
来包含布局。
我可以在纯理论中理解这一点,在不必要地暴露特定布局(如GridLayout或HorizontalLayout)的情况下封装内容。封装有以下好处:
但就实用性而言,我假设CustomComponent的渲染意味着额外的HTML / CSS布局指令,例如可能是另一个div
。 Vaadin渲染需要的最后一件事是HTML结构的另一层。
我想知道这可能是古老的民间传说。也许在Eclipse中使用可视化合成工具只接受CustomComponent
个对象而不是Layout
个对象? (只是猜测,我不知道)
➤或者,为什么不在外层类中声明类型com.vaadin.ui.Layout
的引用变量以获得相同的封装?
➤我夸大了将自定义组件添加到Vaadin渲染的影响吗?
➤我还没有看到CustomComponent的其他好处吗?
答案 0 :(得分:0)
CustomLayout的主要优点是,您可以将组件放在HTML代码中,否则无法通过vaadin方式生成。
如果这会增加更多div / html,就像本机布局一样取决于特定情况。
我们通常仅在干净的Vaadin解决方案会引入更多组件/ div或无法实现时才使用它。
第二个想法是布局和逻辑的分离,可以使用此布局部分实现。您只需指定您拥有的组件,然后UI设计器(在理论上)就可以创建HTML代码,并使用正确的块来放置组件。
在现实生活中我并不认为这是一个真正的优势,因为整个CSS,大小调整等无论如何都是用vaadin完成的。
答案 1 :(得分:0)
您可以使用Visual Designer撰写CustomComponent的内容。这在开发过程中节省了大量时间