Updating from experimental_set_query_params to query_params

Hello!

I’m trying to update the experimental_set_query_params to query_params, I’ve already changed the experimental_get_query_params to query_params


def qparms_cache(key):
    return {}

state = st.query_params['state'][0]
qpcache = qparms_cache(state)
qparms = qpcache

st.experimental_set_query_params(**qparms) <--- this is what I'm trying to get working

but currently seeing the error:

StreamlitAPIException : Using st.query_params together with either st.experimental_get_query_params or st.experimental_set_query_params is not supported. Please convert your app to only use st.query_params

Since st.query_params provides a dictionary-like interface, I guess you can use methods clear and update.

@Goyo Sorry I don’t follow, I’m pretty new, what do you mean I can use clear/update?

I currently have this:


def qparms_cache(key):
    return {}

state = st.query_params['state'][0]
qpcache = qparms_cache(state)
qparms = qpcache

st.experimental_set_query_params(**qparms)

do you mean I should just remove all the above and do this?

st.query_params.clear()

The error message says you cannot use st.experimental_set_query_params. But you can achieve the same effect using st.query_parameters. First remove the existing parameters using clear() . Then add the new parameters using update().