Как получить ширину окна браузера в Vaadin 10 в серверном Java-коде - PullRequest
0 голосов
/ 23 июня 2018

В Vaadin 8 я могу получить размер окна следующим образом:

Page.getCurrent().getBrowserWindowWidth();

В Vaadin 10 Page, похоже, больше не имеет getBrowserWindowWidth метода.

Как правильно определить ширину окна браузера в Vaadin 10?

1 Ответ

0 голосов
/ 25 июня 2018

В настоящее время в Vaadin 10 нет соответствующей функции для этого. У нас есть два открытых билета, связанных с этой функцией: один о делает доступной общую информацию и один конкретно о размер окна .

Лучший способ сделать что-либо, зависящее от размера браузера, - это реализовать эту часть с помощью JavaScript или CSS Media Query. Если вам действительно нужно знать размер на сервере, вам нужно будет использовать Page.exectueJavaScript, чтобы вручную извлечь числа в браузере и передать их обратно на сервер, например, с помощью. @ClientCallable по компонентному методу.

Следует также отметить, что даже если это будет реализовано, оно не будет работать точно так же, как в Vaadin 7 и 8, потому что эти версии замедляют загрузку страницы, ожидая, например, информация о размере должна быть доступна до запуска UI.init, тогда как Vaadin 10 создаст исходное содержимое пользовательского интерфейса даже до того, как браузер успел отправить информацию о размере на сервер.

...