Vaadin是否将所有gui小部件下载到客户端?

Vaadin是否将所有gui小部件下载到客户端?,vaadin,Vaadin,当我有一个Vaadin应用程序时,它是将所有gui小部件下载到客户端,还是按需下载它们。我这样问是因为我有一些客户端只使用一些小部件,而不使用其他小部件。您可以选择在启动时加载哪些小部件,在需要时加载哪些小部件。默认的加载方法是在开始时加载它们。默认的加载方法是eager()。您有几个选择来加载小部件。以下是其中一些: 懒惰 您可以通过将其添加到widgetset(.gwt.xml)来选择使用: 这将仅在请求时加载小部件 小部件定义 同上,但替换为。这将使用小部件的加载首选项,我相信它们中的

当我有一个Vaadin应用程序时,它是将所有gui小部件下载到客户端,还是按需下载它们。我这样问是因为我有一些客户端只使用一些小部件,而不使用其他小部件。

您可以选择在启动时加载哪些小部件,在需要时加载哪些小部件。默认的加载方法是在开始时加载它们。

默认的加载方法是eager()。您有几个选择来加载小部件。以下是其中一些:

懒惰

您可以通过将其添加到widgetset(.gwt.xml)来选择使用:


这将仅在请求时加载小部件

小部件定义

同上,但替换为。这将使用小部件的加载首选项,我相信它们中的大多数都是延迟的

定制#1

通过在widgetset中对其进行子类化和定义来创建自定义小部件映射生成器(同上,但用类替换LazyWidgetMapGenerator)

定制#2

通过子类化(主要是延迟的,由小部件定义)或(每个急切加载的小部件),只设置一些小部件惰性(或延迟的,或急切的),并在widgetset中定义它,创建一个定制的小部件映射生成器

有关更多信息,请查看API文档和以下内容:

Vaadin 14 手册中似乎说,如果标记为不可见,则组件仅在服务器端(Java)表示,不包括在客户端,不会出现在web浏览器的DOM中。如果组件尚未渲染,则为真

使组件可见后,将在客户端的DOM中创建该组件。如果变为不可见,组件将保留在DOM中


在所有情况下,虽然不可见,但与该组件相关的事件会停止通信。因此,虽然不可见,但网络使用是高效的

你怎么选择?我查阅了文件,但到处都找不到
<generate-with class="com.vaadin.terminal.gwt.widgetsetutils.LazyWidgetMapGenerator">
    <when-type-is class="com.vaadin.terminal.gwt.client.WidgetMap" />
</generate-with>