Kaynağa Gözat

update page after a websocket connected (in case it missed a ui update)

Falko Schindler 2 yıl önce
ebeveyn
işleme
3904a2c5db
1 değiştirilmiş dosya ile 7 ekleme ve 1 silme
  1. 7 1
      nicegui/nicegui.py

+ 7 - 1
nicegui/nicegui.py

@@ -1,4 +1,5 @@
 # isort:skip_file
 # isort:skip_file
+from starlette.websockets import WebSocket
 from typing import Awaitable, Callable
 from typing import Awaitable, Callable
 
 
 if True:  # NOTE: prevent formatter from mixing up these lines
 if True:  # NOTE: prevent formatter from mixing up these lines
@@ -53,6 +54,11 @@ def safe_invoke(func: Callable):
 app = globals.app = jp.app
 app = globals.app = jp.app
 ui = Ui()
 ui = Ui()
 
 
-page = ui.page('/', classes=globals.config.main_page_classes)
+
+def handle_page_ready(socket: WebSocket):
+    create_task(page.update(socket))
+
+
+page = ui.page('/', classes=globals.config.main_page_classes, on_page_ready=handle_page_ready)
 page.__enter__()
 page.__enter__()
 jp.justpy(lambda: page, start_server=False)
 jp.justpy(lambda: page, start_server=False)