diff --git a/frontend/ai-dimension/src/App.vue b/frontend/ai-dimension/src/App.vue
index 5654c8c..9ea99f6 100644
--- a/frontend/ai-dimension/src/App.vue
+++ b/frontend/ai-dimension/src/App.vue
@@ -9,7 +9,6 @@ import { onLaunch, onShow, onHide } from '@dcloudio/uni-app'
onLaunch(() => {
console.log('[AI维度] App launched')
- // 初始化主题
initTheme()
})
@@ -22,78 +21,108 @@ onHide(() => {
})
function initTheme() {
- // 从本地存储读取主题偏好
- const theme = uni.getStorageSync('theme') || 'dark'
+ const theme = uni.getStorageSync('theme') || 'light'
applyTheme(theme)
}
function applyTheme(theme) {
- if (theme === 'light') {
- document.documentElement.classList.add('theme-light')
- } else {
- document.documentElement.classList.remove('theme-light')
+ try {
+ // H5 环境直接操作 document
+ const root = document.documentElement
+ if (theme === 'dark') {
+ root.classList.add('theme-dark')
+ root.classList.remove('theme-light')
+ } else {
+ root.classList.remove('theme-dark')
+ root.classList.add('theme-light')
+ }
+ } catch (e) {
+ // 小程序环境:document 不存在,直接忽略
}
}
\ No newline at end of file
diff --git a/frontend/ai-dimension/src/pages/achievements/achievements.vue b/frontend/ai-dimension/src/pages/achievements/achievements.vue
index 79768cc..b57ed19 100644
--- a/frontend/ai-dimension/src/pages/achievements/achievements.vue
+++ b/frontend/ai-dimension/src/pages/achievements/achievements.vue
@@ -178,7 +178,7 @@ function formatDate(dateStr) {
.title {
font-size: 22px;
font-weight: 600;
- color: #fff;
+ color: var(--text-primary);
}
.unlock-count {
@@ -240,7 +240,7 @@ function formatDate(dateStr) {
.category-name {
font-size: 15px;
- color: #fff;
+ color: var(--text-primary);
font-weight: 500;
flex: 1;
}
diff --git a/frontend/ai-dimension/src/pages/chat/chat.vue b/frontend/ai-dimension/src/pages/chat/chat.vue
index 0393cd4..a1862d3 100644
--- a/frontend/ai-dimension/src/pages/chat/chat.vue
+++ b/frontend/ai-dimension/src/pages/chat/chat.vue
@@ -237,7 +237,7 @@ function goShare() {
.chat-name {
font-size: 16px;
- color: white;
+ color: var(--text-primary);
font-weight: 600;
display: block;
}
diff --git a/frontend/ai-dimension/src/pages/dimension/dimension.vue b/frontend/ai-dimension/src/pages/dimension/dimension.vue
index 878c679..5e7cc50 100644
--- a/frontend/ai-dimension/src/pages/dimension/dimension.vue
+++ b/frontend/ai-dimension/src/pages/dimension/dimension.vue
@@ -194,7 +194,7 @@ function goDetail(item) {
overflow: hidden;
}
.dim-banner-icon { font-size: 28px; display: block; margin-bottom: 8px; }
-.dim-banner-title { font-size: 22px; color: #fff; display: block; margin-bottom: 6px; }
+.dim-banner-title { font-size: 22px; color: var(--text-primary); display: block; margin-bottom: 6px; }
.dim-banner-desc {
font-size: 12px;
color: rgba(255,255,255,0.4);
diff --git a/frontend/ai-dimension/src/pages/favorites/favorites.vue b/frontend/ai-dimension/src/pages/favorites/favorites.vue
index 5e5114d..b0e80ad 100644
--- a/frontend/ai-dimension/src/pages/favorites/favorites.vue
+++ b/frontend/ai-dimension/src/pages/favorites/favorites.vue
@@ -134,7 +134,7 @@ function goHome() {
.title {
font-size: 22px;
font-weight: 600;
- color: #fff;
+ color: var(--text-primary);
}
.count-badge {
diff --git a/frontend/ai-dimension/src/pages/index/index.vue b/frontend/ai-dimension/src/pages/index/index.vue
index 9f89443..5c2ad65 100644
--- a/frontend/ai-dimension/src/pages/index/index.vue
+++ b/frontend/ai-dimension/src/pages/index/index.vue
@@ -195,7 +195,7 @@ function goNewsDetail(item) {
}
.brand-text .title {
font-size: 20px;
- color: #fff;
+ color: var(--text-primary);
font-weight: 700;
letter-spacing: 1px;
}
@@ -225,7 +225,7 @@ function goNewsDetail(item) {
}
.greeting-title {
font-size: 26px;
- color: #fff;
+ color: var(--text-primary);
font-weight: 700;
}
.greeting-highlight {
@@ -266,7 +266,7 @@ function goNewsDetail(item) {
}
.section-title {
font-size: 17px;
- color: #fff;
+ color: var(--text-primary);
font-weight: 600;
letter-spacing: 0.5px;
}
diff --git a/frontend/ai-dimension/src/pages/leaderboard/leaderboard.vue b/frontend/ai-dimension/src/pages/leaderboard/leaderboard.vue
index f20ecc5..8825483 100644
--- a/frontend/ai-dimension/src/pages/leaderboard/leaderboard.vue
+++ b/frontend/ai-dimension/src/pages/leaderboard/leaderboard.vue
@@ -152,7 +152,7 @@ function dimDotColor(id) {
.title {
font-size: 22px;
font-weight: 600;
- color: #fff;
+ color: var(--text-primary);
}
// 维度切换
@@ -178,7 +178,7 @@ function dimDotColor(id) {
.dim-tab.active {
background: linear-gradient(135deg, rgba(179, 136, 255, 0.15), rgba(77, 182, 172, 0.15));
border-color: rgba(179, 136, 255, 0.3);
- color: #fff;
+ color: var(--text-primary);
font-weight: 500;
}
diff --git a/frontend/ai-dimension/src/pages/login/login.vue b/frontend/ai-dimension/src/pages/login/login.vue
index c7a781c..297d9ec 100644
--- a/frontend/ai-dimension/src/pages/login/login.vue
+++ b/frontend/ai-dimension/src/pages/login/login.vue
@@ -14,51 +14,49 @@
宇之然 AI 维度
从 5 个维度系统理解人工智能
-
-
-
- 登录后,即刻开启你的 AI 探索之旅
+
+
+ 登录
+ 注册
-
-
-
-
- 登录
- 注册
+
+
+
+ 用户名
+
-
-
-
-
- 用户名
-
-
-
- 密码
-
-
-
+
+ 密码
+
+
+ {{ loading ? '登录中...' : '登录' }}
+
+
+
+
+ 微信一键登录
+
+
+
-
-
-
- 用户名
-
-
-
- 昵称
-
-
-
- 密码
-
-
-
+
+
+
+ 用户名
+
+
+
+ 昵称
+
+
+
+ 密码
+
+
+
+ {{ loading ? '注册中...' : '注册' }}
@@ -71,15 +69,19 @@