Skip to main content

Mode / Broadcast / Global

Launch the server in broadcast mode to synchronize browser state across users. Global variables can be used to manage state. Open /demo in multiple browsers and watch them synchronize in realtime.

from h2o_wave import main, app, Q, ui, pack
count = 0

@app('/demo', mode='broadcast')async def serve(q: Q):    global count    if 'increment' in q.args:        count += 1
    items = pack([ui.button(name='increment', label=f'Count={count}')])
    if count > 0:        form = q.page['example']        form.items = items    else:        q.page['example'] = ui.form_card(box='1 1 12 10', items=items)
    await q.page.save()

Tags: โ€‚broadcast โ€‚mode