Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring boot Vaadin UI完成或documentReady事件_Spring Boot_Document Ready_Vaadin8 - Fatal编程技术网

Spring boot Vaadin UI完成或documentReady事件

Spring boot Vaadin UI完成或documentReady事件,spring-boot,document-ready,vaadin8,Spring Boot,Document Ready,Vaadin8,是否有任何方法可以检测在UI中加载和呈现的所有Vaadin组件、html和元素。用于浏览器控制台中的devMode ... com.vaadin.client.communication.MessageHandler INFO: Referenced paintables: ... 作为信息 在这之后,我想把一些东西推到UI上 Vaadin版本:8.0.5,spring boot 1.5.2Vaadin中有两种异步更新UI的方法:和。基本上,使用基本数据初始化应用程序,并启动计算附加数据的后台

是否有任何方法可以检测在UI中加载和呈现的所有Vaadin组件、html和元素。用于浏览器控制台中的devMode

... com.vaadin.client.communication.MessageHandler
INFO: Referenced paintables: ...
作为信息

在这之后,我想把一些东西推到UI上


Vaadin版本:8.0.5,spring boot 1.5.2

Vaadin中有两种异步更新UI的方法:和。基本上,使用基本数据初始化应用程序,并启动计算附加数据的后台线程。一旦计算完成,您可以相应地更新组件,并且Vaadin将定期从客户端(如果您使用轮询)或推送到客户端(如果您使用服务器推送)。从后台线程访问组件时,不要忘记使用UI.access方法包装调用。

肮脏的解决方法: 如果页面上有可聚焦组件,则可以滥用.addFocusListener()和.focus()。焦点事件仅在将焦点放置在组件上且页面呈现后激发。
然后设置一个标志,如果焦点返回到同一个组件,则事件处理程序不会重新执行。

为什么要在初始化后将某些内容推送到UI?因为性能原因。我想推的是需要时间来加载。我希望用户第一次看到所有基本数据,然后再看到其他数据。所有这些都是作为线程运行的。谢谢Steff,问题是基本初始需要300ms,额外的线程需要每100-500ms。我需要的是用户在300毫秒的用户界面后看到基本数据,而不是在100毫秒之后(不是在100毫秒之后,因为是allready完成并等待用户界面基本初始完成状态)下一个附加数据。一般来说,所有的流程和UI更新都必须在500毫秒内完成。所以我的建议应该有效。在基本初始化之后,Vaadin将响应HTTP请求,浏览器将呈现响应。你会看到,只要在投票或推送上玩一下就可以了。