upload project
This commit is contained in:
commit
06961cae04
422 changed files with 110626 additions and 0 deletions
88
subpackages/settings/about/about.js
Normal file
88
subpackages/settings/about/about.js
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
// pages/settings/about/about.js
|
||||
const app = getApp();
|
||||
|
||||
Page({
|
||||
data: {
|
||||
version: '1.0.0',
|
||||
appName: 'FindMe'
|
||||
},
|
||||
|
||||
onLoad() {
|
||||
// 页面加载时执行
|
||||
|
||||
},
|
||||
|
||||
onShow() {
|
||||
// 页面显示时执行
|
||||
},
|
||||
|
||||
// 检查更新
|
||||
checkUpdate() {
|
||||
wx.showLoading({
|
||||
title: '检查中...',
|
||||
});
|
||||
|
||||
// 模拟检查更新
|
||||
setTimeout(() => {
|
||||
wx.hideLoading();
|
||||
wx.showModal({
|
||||
title: '检查更新',
|
||||
content: '当前已是最新版本',
|
||||
showCancel: false
|
||||
});
|
||||
}, 1500);
|
||||
},
|
||||
|
||||
// 显示更新日志
|
||||
showUpdateLog() {
|
||||
wx.navigateTo({
|
||||
url: '/subpackages/settings/about/update-log/update-log'
|
||||
});
|
||||
},
|
||||
|
||||
// 发送日志
|
||||
sendLog() {
|
||||
wx.showLoading({
|
||||
title: '发送中...',
|
||||
});
|
||||
|
||||
// 模拟发送日志
|
||||
setTimeout(() => {
|
||||
wx.hideLoading();
|
||||
wx.showToast({
|
||||
title: '日志发送成功',
|
||||
icon: 'success'
|
||||
});
|
||||
}, 2000);
|
||||
},
|
||||
|
||||
// 打开隐私政策
|
||||
openPrivacyPolicy() {
|
||||
wx.navigateTo({
|
||||
url: '/pages/webview/webview?url=https://www.findme.cn/privacy'
|
||||
});
|
||||
},
|
||||
|
||||
// 打开使用条款
|
||||
openTermsOfService() {
|
||||
wx.navigateTo({
|
||||
url: '/pages/webview/webview?url=https://www.findme.cn/terms'
|
||||
});
|
||||
},
|
||||
|
||||
// 打开社区规范
|
||||
openCommunityRules() {
|
||||
wx.navigateTo({
|
||||
url: '/pages/webview/webview?url=https://www.findme.cn/community'
|
||||
});
|
||||
},
|
||||
|
||||
// 分享功能
|
||||
onShareAppMessage() {
|
||||
return {
|
||||
title: 'FindMe - 发现身边的朋友',
|
||||
path: '/pages/map/map',
|
||||
imageUrl: '/images/findme-logo.png'
|
||||
};
|
||||
}
|
||||
});
|
||||
4
subpackages/settings/about/about.json
Normal file
4
subpackages/settings/about/about.json
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"navigationBarTitleText": "关于我们",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
36
subpackages/settings/about/about.wxml
Normal file
36
subpackages/settings/about/about.wxml
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
<!-- pages/settings/about/about.wxml -->
|
||||
<view class="about-container">
|
||||
<!-- 头部Logo区域 -->
|
||||
<view class="header">
|
||||
<image class="app-logo" src="/images/findme-logo.png" mode="aspectFit"></image>
|
||||
<text class="app-name">FindMe</text>
|
||||
<text class="app-version">FindMe 1.0.0</text>
|
||||
</view>
|
||||
|
||||
<!-- 功能入口 -->
|
||||
<view class="function-list">
|
||||
<view class="function-item" bindtap="checkUpdate">
|
||||
<text class="function-text">检查更新</text>
|
||||
<view class="arrow-right"></view>
|
||||
</view>
|
||||
<view class="function-item" bindtap="showUpdateLog">
|
||||
<text class="function-text">更新日志</text>
|
||||
<view class="arrow-right"></view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 发送日志按钮 -->
|
||||
<button class="send-log-btn" bindtap="sendLog">发送日志给FINDME</button>
|
||||
|
||||
<!-- 链接区域 -->
|
||||
<view class="links">
|
||||
<text class="link-item" bindtap="openPrivacyPolicy">《Findme服务条款》</text>
|
||||
<text class="link-item" bindtap="openTermsOfService">《Findme隐私政策》</text>
|
||||
<text class="link-item" bindtap="openCommunityRules">《Findme社区规范》</text>
|
||||
</view>
|
||||
|
||||
<!-- 官网链接 -->
|
||||
<view class="official-website">
|
||||
<text>https://www.findme.cn</text>
|
||||
</view>
|
||||
</view>
|
||||
122
subpackages/settings/about/about.wxss
Normal file
122
subpackages/settings/about/about.wxss
Normal file
|
|
@ -0,0 +1,122 @@
|
|||
/* pages/settings/about/about.wxss */
|
||||
|
||||
/* 页面容器 */
|
||||
.about-container {
|
||||
min-height: 100vh;
|
||||
background-color: #000000;
|
||||
padding: 40rpx;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
|
||||
/* 头部区域 */
|
||||
.header {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
margin-bottom: 60rpx;
|
||||
margin-top: 120rpx;
|
||||
}
|
||||
|
||||
.app-logo {
|
||||
width: 200rpx;
|
||||
height: 200rpx;
|
||||
border-radius: 30rpx;
|
||||
margin-bottom: 30rpx;
|
||||
}
|
||||
|
||||
.app-name {
|
||||
font-size: 44rpx;
|
||||
font-weight: bold;
|
||||
color: #ffffff;
|
||||
margin-bottom: 10rpx;
|
||||
}
|
||||
|
||||
.app-version {
|
||||
font-size: 28rpx;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
/* 功能列表 */
|
||||
.function-list {
|
||||
width: 100%;
|
||||
margin-bottom: 60rpx;
|
||||
}
|
||||
|
||||
.function-item {
|
||||
width: 100%;
|
||||
height: 100rpx;
|
||||
background-color: #1a1a1a;
|
||||
border-radius: 16rpx;
|
||||
padding: 0 30rpx;
|
||||
margin-bottom: 20rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.function-text {
|
||||
font-size: 32rpx;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.arrow-right {
|
||||
width: 20rpx;
|
||||
height: 20rpx;
|
||||
border-top: 2rpx solid #999999;
|
||||
border-right: 2rpx solid #999999;
|
||||
transform: rotate(45deg);
|
||||
}
|
||||
|
||||
/* 发送日志按钮 */
|
||||
.send-log-btn {
|
||||
width: 100%;
|
||||
height: 90rpx;
|
||||
background: linear-gradient(90deg, #667eea 0%, #764ba2 100%);
|
||||
color: #ffffff;
|
||||
font-size: 32rpx;
|
||||
border-radius: 45rpx;
|
||||
margin-bottom: 80rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
border: none;
|
||||
}
|
||||
|
||||
/* 链接区域 */
|
||||
.links {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
margin-bottom: 40rpx;
|
||||
}
|
||||
|
||||
.link-item {
|
||||
font-size: 28rpx;
|
||||
color: #667eea;
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
|
||||
/* 官网链接 */
|
||||
.official-website {
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
margin-top: 40rpx;
|
||||
}
|
||||
|
||||
.official-website text {
|
||||
font-size: 26rpx;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
/* 版权信息 */
|
||||
.copyright {
|
||||
font-size: 24rpx;
|
||||
color: #999999;
|
||||
text-align: center;
|
||||
margin-top: auto;
|
||||
margin-bottom: 40rpx;
|
||||
}
|
||||
178
subpackages/settings/about/update-log/update-log.js
Normal file
178
subpackages/settings/about/update-log/update-log.js
Normal file
|
|
@ -0,0 +1,178 @@
|
|||
// pages/settings/about/update-log/update-log.js
|
||||
const app = getApp();
|
||||
|
||||
Page({
|
||||
data: {
|
||||
currentVersion: 'v1.0.0',
|
||||
currentVersionDate: '2023-10-15',
|
||||
updateLogs: [],
|
||||
hasMoreLogs: true,
|
||||
page: 1,
|
||||
pageSize: 5,
|
||||
isRefreshing: false, // 可保留但不再使用
|
||||
isLoading: false,
|
||||
menuButtonInfo: {
|
||||
height: 32,
|
||||
width: 32,
|
||||
left: 20,
|
||||
top: 20
|
||||
},
|
||||
statusBarHeight: 0
|
||||
},
|
||||
|
||||
onLoad: function() {
|
||||
try {
|
||||
const systemInfo = wx.getSystemInfoSync();
|
||||
const menuButtonInfo = wx.getMenuButtonBoundingClientRect();
|
||||
|
||||
this.setData({
|
||||
statusBarHeight: systemInfo.statusBarHeight,
|
||||
menuButtonInfo: menuButtonInfo || this.data.menuButtonInfo
|
||||
});
|
||||
} catch (e) {
|
||||
console.error('获取系统信息失败:', e);
|
||||
}
|
||||
|
||||
this.loadUpdateLogs();
|
||||
},
|
||||
|
||||
onShow: function() {
|
||||
// 页面显示
|
||||
},
|
||||
|
||||
// 移除下拉刷新相关方法
|
||||
// onPullDownRefresh: function() {
|
||||
// this.setData({
|
||||
// isRefreshing: true,
|
||||
// page: 1
|
||||
// });
|
||||
//
|
||||
// // 模拟网络请求
|
||||
// setTimeout(() => {
|
||||
// this.loadUpdateLogs();
|
||||
// wx.stopPullDownRefresh();
|
||||
// this.setData({ isRefreshing: false });
|
||||
// }, 1000);
|
||||
// },
|
||||
|
||||
onReachBottom: function() {
|
||||
if (!this.data.hasMoreLogs || this.data.isLoading) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.loadMoreLogs();
|
||||
},
|
||||
|
||||
loadUpdateLogs: function() {
|
||||
const logs = [
|
||||
{
|
||||
version: 'v1.0.0',
|
||||
date: '2023-10-15',
|
||||
newFeatures: [
|
||||
'• 初始版本发布',
|
||||
'• 实现位置共享功能',
|
||||
'• 新增消息推送机制'
|
||||
],
|
||||
improvements: [
|
||||
'• 优化地图加载速度',
|
||||
'• 提升用户界面响应速度'
|
||||
],
|
||||
fixes: [
|
||||
'• 修复已知的兼容性问题',
|
||||
'• 解决部分机型的闪退问题'
|
||||
]
|
||||
},
|
||||
{
|
||||
version: 'v0.9.0',
|
||||
date: '2023-09-20',
|
||||
newFeatures: [
|
||||
'• 测试版本发布',
|
||||
'• 核心功能开发完成'
|
||||
],
|
||||
improvements: [
|
||||
'• 优化用户体验',
|
||||
'• 提升系统稳定性'
|
||||
],
|
||||
fixes: []
|
||||
},
|
||||
{
|
||||
version: 'v0.8.5',
|
||||
date: '2023-08-15',
|
||||
newFeatures: [],
|
||||
improvements: [
|
||||
'• 改进定位精度',
|
||||
'• 优化电池使用效率'
|
||||
],
|
||||
fixes: [
|
||||
'• 修复消息发送失败问题',
|
||||
'• 解决地图显示异常'
|
||||
]
|
||||
}
|
||||
];
|
||||
|
||||
this.setData({
|
||||
updateLogs: logs,
|
||||
hasMoreLogs: logs.length >= this.data.pageSize
|
||||
});
|
||||
},
|
||||
|
||||
loadMoreLogs: function() {
|
||||
if (this.data.isLoading || !this.data.hasMoreLogs) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.setData({ isLoading: true });
|
||||
|
||||
setTimeout(() => {
|
||||
const moreLogs = [
|
||||
{
|
||||
version: 'v0.8.0',
|
||||
date: '2023-07-10',
|
||||
newFeatures: [
|
||||
'• 新增聊天功能',
|
||||
'• 添加好友系统'
|
||||
],
|
||||
improvements: [
|
||||
'• 优化应用启动速度',
|
||||
'• 改进用户界面布局'
|
||||
],
|
||||
fixes: []
|
||||
},
|
||||
{
|
||||
version: 'v0.7.0',
|
||||
date: '2023-06-05',
|
||||
newFeatures: [
|
||||
'• 基础地图功能上线',
|
||||
'• 用户注册登录系统'
|
||||
],
|
||||
improvements: [],
|
||||
fixes: []
|
||||
}
|
||||
];
|
||||
|
||||
const updatedLogs = [...this.data.updateLogs, ...moreLogs];
|
||||
|
||||
this.setData({
|
||||
updateLogs: updatedLogs,
|
||||
hasMoreLogs: false,
|
||||
isLoading: false,
|
||||
page: this.data.page + 1
|
||||
});
|
||||
}, 1500);
|
||||
},
|
||||
|
||||
navigateBack: function() {
|
||||
wx.navigateBack();
|
||||
},
|
||||
|
||||
onShareAppMessage: function() {
|
||||
return {
|
||||
title: 'FindMe 更新日志',
|
||||
path: '/subpackages/settings/about/update-log/update-log',
|
||||
imageUrl: '/images/findme-logo.png'
|
||||
};
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
7
subpackages/settings/about/update-log/update-log.json
Normal file
7
subpackages/settings/about/update-log/update-log.json
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"navigationStyle": "custom",
|
||||
"backgroundColor": "#F2F2F7",
|
||||
"backgroundTextStyle": "dark",
|
||||
"enablePullDownRefresh": false,
|
||||
"onReachBottomDistance": 50
|
||||
}
|
||||
92
subpackages/settings/about/update-log/update-log.wxml
Normal file
92
subpackages/settings/about/update-log/update-log.wxml
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
<!-- pages/settings/about/update-log/update-log.wxml -->
|
||||
<view class="update-log-container">
|
||||
<!-- 自定义导航栏 -->
|
||||
<view class="custom-nav-bar" style="height: {{menuButtonInfo.height}}px; top: {{statusBarHeight}}px; width: 100%;">
|
||||
<!-- 左侧返回按钮 -->
|
||||
<view class="nav-left" bindtap="navigateBack" style="width: {{menuButtonInfo.width}}px; height: {{menuButtonInfo.height}}px; line-height: {{menuButtonInfo.height}}px;">
|
||||
<text class="back-icon">↩</text>
|
||||
</view>
|
||||
|
||||
<!-- 中间标题 -->
|
||||
<view class="nav-title" style="position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);">
|
||||
更新日志
|
||||
</view>
|
||||
|
||||
<!-- 右侧占位区 -->
|
||||
<view class="nav-right" style="width: {{menuButtonInfo.width}}px; height: {{menuButtonInfo.height}}px;"></view>
|
||||
</view>
|
||||
|
||||
<!-- 内容区域 - 关键修改:将样式合并到一行 -->
|
||||
<scroll-view class="content-area" scroll-y style="padding-top: {{statusBarHeight + menuButtonInfo.height + 30}}px; height: calc(100vh - {{statusBarHeight + menuButtonInfo.height + 30}}px);">
|
||||
<!-- 当前版本信息 -->
|
||||
<view class="current-version-card">
|
||||
<text class="current-version-badge">当前版本</text>
|
||||
<view class="current-version-info">
|
||||
<text class="current-version-name">{{currentVersion}}</text>
|
||||
<text class="current-version-date">{{currentVersionDate}}</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 更新日志列表 -->
|
||||
<view class="log-list">
|
||||
<!-- 版本项 -->
|
||||
<view class="version-item" wx:for="{{updateLogs}}" wx:key="version">
|
||||
<!-- 版本头部 -->
|
||||
<view class="version-header">
|
||||
<text class="version-name">{{item.version}}</text>
|
||||
<text class="version-date">{{item.date}}</text>
|
||||
</view>
|
||||
|
||||
<!-- 版本内容 -->
|
||||
<view class="version-content">
|
||||
<!-- 特性更新 -->
|
||||
<view class="update-section" wx:if="{{item.newFeatures && item.newFeatures.length > 0}}">
|
||||
<view class="section-title">
|
||||
<text class="section-icon">✨</text>
|
||||
<text class="section-text">新功能</text>
|
||||
</view>
|
||||
<view class="section-items">
|
||||
<text class="update-item" wx:for="{{item.newFeatures}}" wx:key="index" wx:for-item="feature">{{feature}}</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 优化改进 -->
|
||||
<view class="update-section" wx:if="{{item.improvements && item.improvements.length > 0}}">
|
||||
<view class="section-title">
|
||||
<text class="section-icon">⚡</text>
|
||||
<text class="section-text">优化改进</text>
|
||||
</view>
|
||||
<view class="section-items">
|
||||
<text class="update-item" wx:for="{{item.improvements}}" wx:key="index" wx:for-item="improvement">{{improvement}}</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 问题修复 -->
|
||||
<view class="update-section" wx:if="{{item.fixes && item.fixes.length > 0}}">
|
||||
<view class="section-title">
|
||||
<text class="section-icon">🔧</text>
|
||||
<text class="section-text">问题修复</text>
|
||||
</view>
|
||||
<view class="section-items">
|
||||
<text class="update-item" wx:for="{{item.fixes}}" wx:key="index" wx:for-item="fix">{{fix}}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 加载更多提示 -->
|
||||
<view class="load-more" wx:if="{{hasMoreLogs}}" bindtap="loadMoreLogs">
|
||||
<text class="load-more-text">加载更多历史版本</text>
|
||||
<text class="load-more-icon">↓</text>
|
||||
</view>
|
||||
|
||||
<!-- 没有更多内容提示 -->
|
||||
<view class="no-more" wx:else>
|
||||
<text class="no-more-text">已经到底啦~</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 底部安全区域 -->
|
||||
<view class="bottom-space"></view>
|
||||
</scroll-view>
|
||||
</view>
|
||||
326
subpackages/settings/about/update-log/update-log.wxss
Normal file
326
subpackages/settings/about/update-log/update-log.wxss
Normal file
|
|
@ -0,0 +1,326 @@
|
|||
/* pages/settings/about/update-log/update-log.wxss */
|
||||
|
||||
/* CSS变量定义 */
|
||||
page {
|
||||
/* --primary-color: #b10026;
|
||||
--primary-light: #b801a8;
|
||||
--primary-dark: #82009c; */
|
||||
--background-color: #ff3333;
|
||||
--surface-color: #09094d;
|
||||
--text-primary: #FFFFFF;
|
||||
--text-secondary: #8E8E93;
|
||||
--text-tertiary: #48484A;
|
||||
--border-color: #38383A;
|
||||
--shadow-light: 0 1rpx 3rpx rgba(0, 0, 0, 0.3);
|
||||
--shadow-medium: 0 4rpx 12rpx rgba(0, 0, 0, 0.4);
|
||||
--radius-small: 8rpx;
|
||||
--radius-medium: 12rpx;
|
||||
--radius-large: 20rpx;
|
||||
}
|
||||
|
||||
/* 页面容器 */
|
||||
.update-log-container {
|
||||
height: 100vh;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
/* background-color: var(--background-color); */
|
||||
color: var(--text-primary);
|
||||
|
||||
width: 100%;
|
||||
background: linear-gradient(to bottom, #00607e, #800064,#190220);
|
||||
/* color: #ffffff; */
|
||||
}
|
||||
|
||||
/* 自定义导航栏 */
|
||||
.custom-nav-bar {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
/* background-color: #1a1a1a; */
|
||||
/* border-bottom: 1px solid #333333; */
|
||||
z-index: 10;
|
||||
box-sizing: content-box; /* 确保padding不会影响总高度计算 */
|
||||
}
|
||||
|
||||
.nav-content {
|
||||
width: 48px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
/* 左侧返回按钮*/
|
||||
.nav-left {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
/* justify-content: flex-start; */
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.back-icon {
|
||||
font-size: 20px;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
/* 中间标题 - 确保居中显示 */
|
||||
.nav-center {
|
||||
position: absolute;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.nav-title {
|
||||
font-size: 36rpx;
|
||||
font-weight: 600;
|
||||
color: white;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
/* 右侧占位区 - 保持布局平衡 */
|
||||
.nav-right {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
/* 内容区域样式强化 */
|
||||
.content-area {
|
||||
flex: 1;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
padding: 24rpx;
|
||||
box-sizing: border-box; /* 确保padding不会增加元素总宽度 */
|
||||
/* 移除可能存在的margin-top,避免与padding-top冲突 */
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
/* 当前版本卡片 */
|
||||
.current-version-card {
|
||||
background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%);
|
||||
color: white;
|
||||
border-radius: var(--radius-large);
|
||||
padding: 36rpx;
|
||||
margin-bottom: 32rpx;
|
||||
box-shadow: var(--shadow-medium);
|
||||
animation: fadeIn 0.5s ease;
|
||||
}
|
||||
|
||||
.current-version-badge {
|
||||
background: rgba(255, 255, 255, 0.2);
|
||||
padding: 8rpx 16rpx;
|
||||
border-radius: 16rpx;
|
||||
font-size: 24rpx;
|
||||
display: inline-block;
|
||||
margin-bottom: 16rpx;
|
||||
}
|
||||
|
||||
.current-version-info {
|
||||
display: flex;
|
||||
align-items: baseline;
|
||||
gap: 16rpx;
|
||||
}
|
||||
|
||||
.current-version-name {
|
||||
font-size: 40rpx;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.current-version-date {
|
||||
font-size: 28rpx;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
/* 日志列表 */
|
||||
.log-list {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 24rpx;
|
||||
}
|
||||
|
||||
/* 版本项 */
|
||||
.version-item {
|
||||
background: var(--surface-color);
|
||||
border-radius: var(--radius-medium);
|
||||
padding: 32rpx;
|
||||
box-shadow: var(--shadow-light);
|
||||
border: 1rpx solid var(--border-color);
|
||||
transition: all 0.3s ease;
|
||||
animation: slideUp 0.4s ease;
|
||||
}
|
||||
|
||||
.version-item:active {
|
||||
transform: scale(0.98);
|
||||
box-shadow: var(--shadow-medium);
|
||||
}
|
||||
|
||||
/* 版本头部 */
|
||||
.version-header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-bottom: 24rpx;
|
||||
padding-bottom: 16rpx;
|
||||
border-bottom: 1rpx solid var(--border-color);
|
||||
}
|
||||
|
||||
/* 版本名称 */
|
||||
.version-name {
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: var(--primary-color);
|
||||
}
|
||||
|
||||
/* 版本日期 */
|
||||
.version-date {
|
||||
font-size: 24rpx;
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
/* 版本内容 */
|
||||
.version-content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 24rpx;
|
||||
}
|
||||
|
||||
/* 更新区域 */
|
||||
.update-section {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 16rpx;
|
||||
}
|
||||
|
||||
/* 区域标题 */
|
||||
.section-title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8rpx;
|
||||
margin-bottom: 8rpx;
|
||||
}
|
||||
|
||||
.section-icon {
|
||||
font-size: 28rpx;
|
||||
}
|
||||
|
||||
.section-text {
|
||||
font-size: 28rpx;
|
||||
font-weight: 500;
|
||||
color: var(--text-primary);
|
||||
}
|
||||
|
||||
/* 区域内容 */
|
||||
.section-items {
|
||||
padding-left: 36rpx;
|
||||
}
|
||||
|
||||
/* 更新项 */
|
||||
.update-item {
|
||||
font-size: 26rpx;
|
||||
color: var(--text-secondary);
|
||||
display: block;
|
||||
margin-bottom: 16rpx;
|
||||
line-height: 1.6;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.update-item:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
/* 加载更多 */
|
||||
.load-more {
|
||||
text-align: center;
|
||||
padding: 32rpx;
|
||||
font-size: 28rpx;
|
||||
color: var(--text-secondary);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 8rpx;
|
||||
cursor: pointer;
|
||||
transition: all 0.2s ease;
|
||||
}
|
||||
|
||||
.load-more:active {
|
||||
color: var(--primary-color);
|
||||
transform: scale(0.96);
|
||||
}
|
||||
|
||||
.load-more-icon {
|
||||
font-size: 24rpx;
|
||||
}
|
||||
|
||||
/* 没有更多内容 */
|
||||
.no-more {
|
||||
text-align: center;
|
||||
padding: 48rpx 32rpx;
|
||||
font-size: 26rpx;
|
||||
color: var(--text-tertiary);
|
||||
}
|
||||
|
||||
/* 动画效果 */
|
||||
@keyframes fadeIn {
|
||||
from {
|
||||
opacity: 0;
|
||||
transform: translateY(-10rpx);
|
||||
}
|
||||
to {
|
||||
opacity: 1;
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes slideUp {
|
||||
from {
|
||||
opacity: 0;
|
||||
transform: translateY(20rpx);
|
||||
}
|
||||
to {
|
||||
opacity: 1;
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
/* 响应式设计 */
|
||||
@media screen and (max-width: 375px) {
|
||||
.current-version-name {
|
||||
font-size: 36rpx;
|
||||
}
|
||||
|
||||
.current-version-date {
|
||||
font-size: 24rpx;
|
||||
}
|
||||
|
||||
.version-name {
|
||||
font-size: 28rpx;
|
||||
}
|
||||
|
||||
.section-text {
|
||||
font-size: 26rpx;
|
||||
}
|
||||
|
||||
.update-item {
|
||||
font-size: 24rpx;
|
||||
}
|
||||
}
|
||||
|
||||
/* 加载动画 */
|
||||
.loading {
|
||||
display: inline-block;
|
||||
width: 20rpx;
|
||||
height: 20rpx;
|
||||
border: 2rpx solid var(--border-color);
|
||||
border-radius: 50%;
|
||||
border-top-color: var(--primary-color);
|
||||
animation: spin 1s ease-in-out infinite;
|
||||
}
|
||||
|
||||
@keyframes spin {
|
||||
to { transform: rotate(360deg); }
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue