Skip to content

Instantly share code, notes, and snippets.

@hansthen
Created December 3, 2023 17:41
Show Gist options
  • Save hansthen/0eaf644582a20faf4ff362720510fdfb to your computer and use it in GitHub Desktop.
Save hansthen/0eaf644582a20faf4ff362720510fdfb to your computer and use it in GitHub Desktop.
Page flow
import streamlit as st
class App():
def __init__(self, default=None):
self.page = default
self.args = []
self.kwargs = {}
def goto(self, page, *args, **kwargs):
self.page = page
self.args = args
self.kwargs = kwargs
st.rerun()
def next(self, page, *args, **kwargs):
self.page = page
def go(self):
st.rerun()
def show(self):
self.page(*self.args, **self.kwargs)
def initialize(key, default):
if key not in st.session_state:
st.session_state[key] = default()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment