#13853·streamlit

使用与查询参数同步的元素时,返回按钮不起作用

作者: davidhu-openai创建于 2026年2月7日更新于 2026年9月16日
标签type:enhancementpapercutarea:frontendfeature:query-params
  • 核对表
  • 我搜索了现有问题
  • 我给这个问题增加了一个非常描述性的标题。
  • 我已提供了以下充分资料,帮助复制这一问题。

页:1

在按下浏览器后键时, streamlit 脚本不会重新执行, 因此与 `st. query params' 同步的元素不会刷新

可复制代码示例

[!][以流云打开](https://static.streamlit.io/badges/streamlit badge black white.svg)](https://issues.streamlitapp.com/?issues=gh-13853)[永久失效連結] (中文(简体) ).

导入流体为 st

数字 元素=10

st. set page config (page title="雾元素滑动",布局="以"为中心")

元素  ids = [f" mock- element- {i: 02d}" 对于i在范围(num elements)]
元素 to idx = {element id: idx 用于 idx, 元素  id in lockete(element ids)}

url element id = st.query params.get ("element id") 互联网档案馆的存檔,存档日期2013-12-21.
如果(则
“ mock element id” 不是在st.session 状态
或 st. session  state ["mock element id"] 不在元素 to idx中
:
st.session  state ["mock element id"]= (中文(简体) ).
url element id 如果 url element id 在元素 to idx 其他元素 ids [0]
(中文(简体) ).

带有 St. Container( 键="mock- element- sliper"):
st. select  slitver( 选择滑块)
"元素",
选项=元素 IDs,
键=“ mock element id”,
标签 可见="相撞",
(中文(简体) ).

st.query params ["lement id"]=st.session  state ["mock element id"] (中文(简体) ).

当前 element id = st.session  state ["mock element id"] (中文(简体) ).
当前 idx = 元素  to idx [当前 element id]
含有 st. popover( f) “ 元素 ” :
st. markdown (f"({current idx}/{num 要素})") (中文(简体) ).
  1. 创建带有上述代码的流体应用程序,并前往 http://localhost:8501/?lement id=mock-element-3
  2. 将元素拖入模拟元素5
  3. 按浏览器后键.

• 预期行为

你会期望滑子回到模拟元素... 3个

当前的行为

滑板留在模拟元素5

这是倒退吗?

  • [ 是的,这曾经是以前版本的。

调试信息

  • 简化版本 :
  • Python版本:
  • 操作系统:
  • 浏览器:

补充信息

我之前见过https://GitHub.com/streamlit/streamlit/issues/9279,这看起来是相互关联的,但不同,不能解决这个问题

内容来源: streamlit/streamlit