feat: 1. 完善文档列表的显示效果,数据对接后端接口返回。
2. 对评查点分组和文档类型的编辑删除新增操作进行限制。
This commit is contained in:
@@ -17,6 +17,7 @@ export function Sidebar({ onToggle, collapsed, userRole, frontendJWT = '' }: Sid
|
||||
const [isLoadingRoutes, setIsLoadingRoutes] = useState<boolean>(true); // 路由加载状态
|
||||
const [isMobile, setIsMobile] = useState<boolean>(false); // 移动端检测
|
||||
const [selectedModuleName, setSelectedModuleName] = useState<string>(''); // 当前选中的模块名称
|
||||
const [selectedModulePicPath, setSelectedModulePicPath] = useState<string>(''); // 当前选中的模块图片路径
|
||||
const navigate = useNavigate();
|
||||
|
||||
// 移动端检测
|
||||
@@ -89,17 +90,24 @@ export function Sidebar({ onToggle, collapsed, userRole, frontendJWT = '' }: Sid
|
||||
fetchUserRoutes();
|
||||
}, [userRole, frontendJWT, navigate]);
|
||||
|
||||
// 从 sessionStorage 读取当前选中的模块名称
|
||||
// 从 sessionStorage 读取当前选中的模块名称和图片路径
|
||||
useEffect(() => {
|
||||
if (typeof window !== 'undefined') {
|
||||
try {
|
||||
const moduleName = sessionStorage.getItem('selectedModuleName');
|
||||
const modulePicPath = sessionStorage.getItem('selectedModulePicPath');
|
||||
|
||||
if (moduleName) {
|
||||
setSelectedModuleName(moduleName);
|
||||
console.log('📌 [Sidebar] 当前选中模块:', moduleName);
|
||||
}
|
||||
|
||||
if (modulePicPath) {
|
||||
setSelectedModulePicPath(modulePicPath);
|
||||
console.log('🖼️ [Sidebar] 模块图片路径:', modulePicPath);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('❌ [Sidebar] 读取 selectedModuleName 失败:', error);
|
||||
console.error('❌ [Sidebar] 读取 sessionStorage 失败:', error);
|
||||
}
|
||||
}
|
||||
}, [location.pathname]); // 路由变化时重新读取
|
||||
@@ -260,6 +268,24 @@ export function Sidebar({ onToggle, collapsed, userRole, frontendJWT = '' }: Sid
|
||||
</button>
|
||||
</div>
|
||||
|
||||
{/* 显示入口模块的名称 */}
|
||||
{selectedModuleName && (
|
||||
<div className="py-3 px-4 border-b border-gray-100">
|
||||
<div className={`flex items-center ${collapsed ? 'justify-center' : ''}`}>
|
||||
{selectedModulePicPath && (
|
||||
<img
|
||||
src={selectedModulePicPath}
|
||||
alt={selectedModuleName}
|
||||
className={`${collapsed ? 'w-8 h-8' : 'w-6 h-6 mr-3'}`}
|
||||
/>
|
||||
)}
|
||||
{!collapsed && (
|
||||
<span className="text-base font-medium text-green-700">{selectedModuleName}</span>
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
|
||||
<div className="py-4 px-[10px] flex-1 overflow-y-auto sidebar-scroll-area">
|
||||
{isLoadingRoutes ? (
|
||||
// 加载中状态显示,保留菜单布局结构
|
||||
|
||||
Reference in New Issue
Block a user