Check if router is ready on page load (#241)

This commit is contained in:
Thomas Brandého 2023-01-10 21:22:05 +01:00 committed by GitHub
parent 876cf13344
commit f370642205
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 1 deletions

View File

@ -158,9 +158,12 @@ SOCKET = constants.SOCKET
STATE = constants.STATE
EVENTS = constants.EVENTS
SET_RESULT = format_state_setter(RESULT)
READY = f"const {{ isReady }} = {ROUTER};"
USE_EFFECT = join(
[
"useEffect(() => {{",
" if(!isReady)",
f" return;",
f" if (!{SOCKET}.current) {{{{",
f" connect({SOCKET}, {{state}}, {RESULT}, {SET_RESULT}, {ROUTER}, {EVENT_ENDPOINT})",
" }}",

View File

@ -119,7 +119,8 @@ def compile_state(state: Type[State]) -> str:
)
router = templates.ROUTER
socket = templates.SOCKET
return templates.join([synced_state, result, router, socket])
ready = templates.READY
return templates.join([synced_state, result, router, socket, ready])
def compile_events(state: Type[State]) -> str: