在发生阻塞时,输入不会保存在 `st.session_state` 中
作者: Wattyyy创建于 2023年12月20日更新于 2026年9月16日
标签type:bugstatus:confirmedpriority:P3feature:st.session_statefeature:callbacksstatus:needs-product-approval
- 核对表
- 我搜索了现有问题。
- 我对这个问题增加了一个非常描述性的标题。
- 我已提供了以下充分的资料来帮助复制这个问题。
页:1
如果按下按钮后屏蔽(如HTTP请求,睡眠),则用户在st.text rea'上的输入不会被保存在st.session state'上.
另外,如果对屏蔽功能进行评论,则在单击后将“st.text rea”的输入保存在“st.session state”上。
可复制代码示例
[!] (https://static.streamlit.io/badges/streamlit badge black white.svg)] (https://issues.streamlitapp.com/?issues=gh-7862) (中文(简体) ).
导入时间
导入流体为 st
def set state(一:int,文本:str) :
st.session 状态.state=一
st.session state.lines = text.splitlines () 互联网档案馆的存檔,存档日期2013-12-22.
时间。 睡眠(2)
如果在st.session 状态中没有“舞台”:
ST.session 状态. state=0
如果st.session state. state ==== 翻译:
文本 = st.text rea (“输入您的文本”,高=100)
st. 按钮( T)
"开始"
点击=set 状态,
args=[1,正文],
(中文(简体) ).
如果st.session state. state. state ===中的日期值 (帮助)
st. title ("您的文本")
用于一,在列表(st.session state.lines)中行:
st. write( f"{i}. {行}") (中文(简体) ).- 输入文本区域的一些案文
- 点击 " 开始 " 按钮
- 只显示标题(不显示`st.session state'的内容)
[Screen Recording 2023-12-22 at 2 25 05] (https://GitHub.com/streamlit/streamlit/assets/45100960/550da1b4-2db0-4e88-9335-abf26e6204e1).
• 预期行为
输入保存在 “st. session state” 上,并在点击按钮后显示。
当前的行为
直接单击按钮时,用户输入不保存在“st.session state”中。 然而,如果用户点击按钮或文本区域以外的地方后再点击该按钮(这会导致阻塞),则输入会被按预期保存.
这是倒退吗?
- [ 是的,这曾经是以前版本的。
调试信息
- 简化版本 :
- 1.29.0 (韩语)
- Python版本:
- 3.11.6 (韩语)
- 操作系统:
- Ubuntu 22.04.2 LTS
- 浏览器:
- Google Chrome (英语).
补充信息
无回复( N)
内容来源: streamlit/streamlit