Dashibase配置文件完全指南:用JSON打造个性化仪表盘界面

📅 2026/8/10 19:16:51
Dashibase配置文件完全指南:用JSON打造个性化仪表盘界面
Dashibase配置文件完全指南用JSON打造个性化仪表盘界面【免费下载链接】dashibaseSuper simple user dashboards for Supabase users.项目地址: https://gitcode.com/gh_mirrors/da/dashibaseDashibase是一款为Supabase用户设计的超级简单仪表盘工具通过JSON配置文件即可快速定制专属数据界面。本文将详解如何通过修改src/dashibaseConfig.ts文件轻松实现仪表盘名称、数据源连接、页面布局和交互功能的个性化配置。配置文件基础结构Dashibase的核心配置文件位于项目根目录下的src/dashibaseConfig.ts采用TypeScript格式定义配置对象。基础结构包含三大要素全局设置仪表盘名称和Supabase连接信息页面配置定义具体数据页面的展示方式属性定义控制数据字段的显示类型和交互行为以下是配置文件的基本框架const DASHIBASE_CONFIG:Config { name: My Dashboard, supabase_url: https://YOUR_SUPABASE_URL.supabase.co, supabase_anon_key: YOUR_SUPABASE_ANON_KEY, pages: [/* 页面配置数组 */] }快速上手基础配置步骤1. 连接Supabase数据源首先需要配置Supabase连接信息在Supabase项目控制台的设置 API页面中获取URL和匿名密钥supabase_url: https://abc123.supabase.co, // 替换为你的Supabase URL supabase_anon_key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..., // 替换为你的匿名密钥2. 创建第一个数据页面在pages数组中添加页面配置至少需要包含名称、ID和关联的数据表pages: [ { name: 用户管理, // 页面显示名称 page_id: user_management, // 唯一标识符 table_id: users, // 关联的Supabase数据表名 mode: list // 显示模式list(列表)/card(卡片) } ]配置完成后你将看到类似这样的基础数据列表界面高级定制属性类型与交互配置多样化数据展示类型Dashibase支持多种属性类型通过type字段控制数据展示方式文本输入框{ id: username, label: 用户名, type: AttributeType.Text }下拉选择器枚举类型{ id: status, label: 状态, type: AttributeType.Enum, enumOptions: [活跃, 禁用, 待审核] // 下拉选项列表 }关联数据展示Join类型用于显示关联表数据{ id: department(name), // 格式关联表名(字段名) label: 所属部门, type: AttributeType.Join }暗色/亮色主题切换Dashibase内置明暗两种主题通过配置文件中的theme属性需在Config接口中扩展可设置默认主题// 暗色主题示例 { name: 我的仪表盘, theme: dark, // light或dark // 其他配置... }实用技巧自定义交互动作通过triggers配置可添加自定义按钮动作例如添加数据导出功能triggers: [ { label: 导出CSV, code: downloadCsv(data) // 调用内置导出函数 }, { label: 发送通知, code: sendNotification(user.id) // 自定义业务逻辑 } ]配置后的动作按钮会显示在页面顶部操作栏点击即可执行预设脚本。常见问题解决配置不生效检查文件路径是否正确src/dashibaseConfig.ts确保TypeScript类型定义正确可参考src/utils/config.ts中的接口定义重启开发服务器npm run dev如何隐藏敏感字段在属性定义中添加readonly: true和hidden: true{ id: password_hash, label: 密码, type: AttributeType.Text, readonly: true, hidden: true // 不在列表和详情页显示 }配置文件完整示例以下是一个包含多页面、多属性类型的完整配置示例const DASHIBASE_CONFIG:Config { name: 电商管理系统, supabase_url: https://your-project.supabase.co, supabase_anon_key: your-anon-key, pages: [ { name: 订单列表, page_id: orders, table_id: orders, mode: list, attributes: [ { id: order_number, label: 订单号, type: AttributeType.Text }, { id: status, label: 状态, type: AttributeType.Enum, enumOptions: [待付款, 已发货, 已完成] }, { id: user(email), label: 客户邮箱, type: AttributeType.Join }, { id: total_amount, label: 金额, type: AttributeType.Number } ], triggers: [ { label: 导出订单, code: downloadCsv(data) } ] } ] }通过本文介绍的配置方法你可以轻松打造符合业务需求的个性化仪表盘。更多高级配置选项可参考项目中的docs/actions.md文档或查看src/components/dashboard/elements/目录下的组件源码了解界面元素定制方式。【免费下载链接】dashibaseSuper simple user dashboards for Supabase users.项目地址: https://gitcode.com/gh_mirrors/da/dashibase创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考