fix: 前端导航栏改为动态加载
修复问题: 1. 顶部导航栏不显示后台新增的类别 → 改为从API动态加载 2. 前端页面移除"添加数据"按钮 → 数据由后台管理员管理 3. 前端移除"后台"入口 → 管理员直接访问/admin
This commit is contained in:
@@ -15,14 +15,8 @@
|
||||
<i class="ri-dashboard-3-line text-2xl text-indigo-600"></i>
|
||||
<span class="text-xl font-bold text-gray-800">ParamHub</span>
|
||||
</a>
|
||||
<div class="flex gap-6 text-sm">
|
||||
<a href="/" class="text-gray-600 hover:text-indigo-600">首页</a>
|
||||
<a href="/models" class="text-gray-600 hover:text-indigo-600">模型</a>
|
||||
<a href="/gpus" class="text-gray-600 hover:text-indigo-600">GPU</a>
|
||||
<a href="/cpus" class="text-gray-600 hover:text-indigo-600">CPU</a>
|
||||
<a href="/tools" class="text-gray-600 hover:text-indigo-600">工具</a>
|
||||
<a href="/compare" class="text-indigo-600 font-medium">对比</a>
|
||||
<a href="/knowledge" class="text-gray-600 hover:text-indigo-600">知识库</a>
|
||||
<div class="flex gap-4 text-sm" id="topNav">
|
||||
<!-- 动态加载 -->
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
@@ -75,7 +69,41 @@
|
||||
</main>
|
||||
|
||||
<script>
|
||||
let compareType = 'model';
|
||||
let categories = [];
|
||||
|
||||
// 加载导航栏
|
||||
async function loadNav() {
|
||||
const res = await fetch('/api/categories');
|
||||
categories = await res.json();
|
||||
|
||||
const builtinPages = [
|
||||
{name: '首页', href: '/'},
|
||||
{name: '工具', href: '/tools'},
|
||||
{name: '对比', href: '/compare'},
|
||||
{name: '知识库', href: '/knowledge'}
|
||||
];
|
||||
|
||||
const categoryPages = {
|
||||
'ai-models': '/models',
|
||||
'gpus': '/gpus',
|
||||
'cpus': '/cpus'
|
||||
};
|
||||
|
||||
let navHtml = '';
|
||||
builtinPages.forEach(p => {
|
||||
const isActive = window.location.pathname === p.href;
|
||||
navHtml += `<a href="${p.href}" class="${isActive ? 'text-indigo-600 font-medium' : 'text-gray-600 hover:text-indigo-600'}">${p.name}</a>`;
|
||||
});
|
||||
|
||||
categories.forEach(cat => {
|
||||
const href = categoryPages[cat.id] || `/category/${cat.id}`;
|
||||
const isActive = window.location.pathname === href;
|
||||
navHtml += `<a href="${href}" class="${isActive ? 'text-indigo-600 font-medium' : 'text-gray-600 hover:text-indigo-600'}">${cat.name}</a>`;
|
||||
});
|
||||
|
||||
document.getElementById('topNav').innerHTML = navHtml;
|
||||
}
|
||||
let compareType = 'model';
|
||||
let allData = [];
|
||||
|
||||
async function setCompareType(type) {
|
||||
|
||||
Reference in New Issue
Block a user