在Vaadin 8中,我可以这样获得窗口的大小:
Page.getCurrent().getBrowserWindowWidth();
在Vaadin 10中,Page
似乎不再具有getBrowserWindowWidth
方法。
在Vaadin 10中确定浏览器窗口宽度的正确方法是什么?
答案 0 :(得分:3)
Vaadin 10当前没有适当的功能。我们有两张与此功能相关的待售票:一张与making generic information available有关,另一张与the window size有关。
完成某项取决于浏览器大小的最佳方法可能是使用JavaScript或CSS Media Query来实现该部分。如果您确实需要了解服务器的大小,则需要使用Page.exectueJavaScript
在浏览器中手动提取数字,然后使用例如将它们传递回服务器。 @ClientCallable
使用组件方法。
还应该指出的是,即使实现了此功能,它在Vaadin 7和8中也无法正常工作,因为这些版本会减慢页面引导程序的等待时间,例如尺寸信息将在运行UI.init
之前可用,而Vaadin 10甚至会在浏览器没有时间将尺寸信息发送到服务器之前构造初始UI内容。