You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何移除Streamlit 1.10.0中显示文件名的侧边导航栏?

问题根因

Streamlit 1.10.0版本新增了原生多页面应用自动识别机制:当运行入口脚本(即你的app.py)的同级目录下存在名称为pages的文件夹时,框架会自动扫描该文件夹内所有合法Python文件,在侧边栏生成默认导航菜单,和你自定义的MultiApp多页面逻辑冲突,就出现了多余的自动生成导航栏。

解决方案

方案1:重命名pages目录(改动成本最低)

该方案不需要调整现有业务代码逻辑,只需要做两处修改:

  • 将根目录下存放页面代码的pages文件夹重命名为非pages的名称,例如views、page_modules均可
  • 修改app.py中的导入语句,将原有的from pages import show, analysis, help, custom, download, three_d替换为对应新目录名的导入,比如重命名为views就改成from views import show, analysis, help, custom, download, three_d
  • 重启Streamlit服务,自动生成的侧边导航栏会直接消失。

方案2:修改配置关闭原生导航

如果不想调整现有目录结构,可以通过配置项直接关闭Streamlit的自动页面导航生成功能:

  1. 在项目根目录创建.streamlit文件夹,在文件夹内新建config.toml配置文件
  2. 在配置文件中写入以下配置:
[client]
showPagesNav = false
  1. 保存文件后重启Streamlit应用,侧边栏的自动导航会被隐藏。
    注意:该配置项仅在Streamlit 1.10.0及以上版本生效。

方案3:适配原生多页面框架(长期维护推荐)

如果项目需要长期迭代,可以直接替换自定义MultiApp框架,适配Streamlit官方原生多页面能力:

  • 保留现有pages目录结构,按照官方命名规则给页面文件添加排序前缀控制展示顺序,例如1_Show_data.py、2_Analysis.py
  • 把文件上传、CSV读取这类公共逻辑放到入口app.py中,通过st.session_state实现跨页面的数据共享,不需要自行维护路由逻辑,运行性能比自定义MultiApp框架更优。

侧边导航栏效果参考

内容的提问来源于stack exchange,提问作者Mystic Mickey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.02 01:01:26