Files
leaudit-platform-frontend/app/routes/chat-with-llm.dataset-manager.tsx
T
TanWenyan 3f5c23123b feat: 添加对话应用选择和知识库切换功能
- 新增对话应用管理模块(dify-chat-apps),支持获取和切换对话应用
- 优化对话应用切换后自动刷新会话列表功能
- 知识库管理页面新增下拉选择器,支持切换不同知识库
- API 层支持 app_id 参数传递,实现多应用会话隔离

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-08 01:44:34 +08:00

43 lines
1.2 KiB
TypeScript

import { Spin } from 'antd';
import { useState, useEffect } from 'react';
/**
* 知识库管理页面
* 动态加载 DatasetManager 组件避免 SSR 问题
*/
export default function DatasetManagerPage() {
const [DatasetManager, setDatasetManager] = useState<React.ComponentType | null>(null);
const [mounted, setMounted] = useState(false);
useEffect(() => {
setMounted(true);
// 只在客户端动态导入组件
import("~/components/dify-dataset-manager").then((mod) => {
setDatasetManager(() => mod.default);
}).catch(err => {
console.error('加载知识库管理组件失败:', err);
});
}, []);
// 服务端渲染时显示简单加载状态
if (!mounted) {
return (
<div style={{ padding: '40px', textAlign: 'center' }}>
<div>...</div>
</div>
);
}
// 客户端加载中
if (!DatasetManager) {
return (
<div style={{ padding: '40px', textAlign: 'center' }}>
<Spin size="large" />
<p style={{ marginTop: 16 }}>...</p>
</div>
);
}
return <DatasetManager />;
}