feat: 实现导航页基础功能
- 添加导航条目和分类数据模型 - 实现导航卡片网格展示 - 支持点击卡片打开链接 - 添加主题样式(渐变色、卡片阴影) - 区分系统默认和自定义条目 - 添加分类统计信息"
This commit is contained in:
94
frontend/lib/data/nav_data.dart
Normal file
94
frontend/lib/data/nav_data.dart
Normal file
@@ -0,0 +1,94 @@
|
||||
import '../models/nav_item.dart';
|
||||
import '../models/category.dart';
|
||||
|
||||
class NavData {
|
||||
// 获取所有分类数据
|
||||
static List<Category> getCategories() {
|
||||
return [
|
||||
Category(
|
||||
id: 'default',
|
||||
name: '常用导航',
|
||||
isSystem: true,
|
||||
entries: [
|
||||
NavItem(
|
||||
id: 'github',
|
||||
title: 'GitHub',
|
||||
url: 'https://github.com',
|
||||
icon: '💻',
|
||||
isSystem: true,
|
||||
),
|
||||
NavItem(
|
||||
id: 'google',
|
||||
title: 'Google',
|
||||
url: 'https://www.google.com',
|
||||
icon: '🔍',
|
||||
isSystem: true,
|
||||
),
|
||||
NavItem(
|
||||
id: 'stackoverflow',
|
||||
title: 'Stack Overflow',
|
||||
url: 'https://stackoverflow.com',
|
||||
icon: '📚',
|
||||
isSystem: true,
|
||||
),
|
||||
NavItem(
|
||||
id: 'bilibili',
|
||||
title: 'B站',
|
||||
url: 'https://www.bilibili.com',
|
||||
icon: '📺',
|
||||
isSystem: true,
|
||||
),
|
||||
],
|
||||
),
|
||||
Category(
|
||||
id: 'dev',
|
||||
name: '开发工具',
|
||||
isSystem: false,
|
||||
entries: [
|
||||
NavItem(
|
||||
id: 'rust_doc',
|
||||
title: 'Rust 文档',
|
||||
url: 'https://doc.rust-lang.org',
|
||||
icon: '🦀',
|
||||
isSystem: false,
|
||||
),
|
||||
NavItem(
|
||||
id: 'flutter_doc',
|
||||
title: 'Flutter 文档',
|
||||
url: 'https://docs.flutter.dev',
|
||||
icon: '📱',
|
||||
isSystem: false,
|
||||
),
|
||||
NavItem(
|
||||
id: 'dartpad',
|
||||
title: 'DartPad',
|
||||
url: 'https://dartpad.dev',
|
||||
icon: '🎯',
|
||||
isSystem: false,
|
||||
),
|
||||
],
|
||||
),
|
||||
Category(
|
||||
id: 'ai',
|
||||
name: 'AI 工具',
|
||||
isSystem: false,
|
||||
entries: [
|
||||
NavItem(
|
||||
id: 'chatgpt',
|
||||
title: 'ChatGPT',
|
||||
url: 'https://chat.openai.com',
|
||||
icon: '🤖',
|
||||
isSystem: false,
|
||||
),
|
||||
NavItem(
|
||||
id: 'claude',
|
||||
title: 'Claude',
|
||||
url: 'https://claude.ai',
|
||||
icon: '🧠',
|
||||
isSystem: false,
|
||||
),
|
||||
],
|
||||
),
|
||||
];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user