优化小宝
This commit is contained in:
parent
56f24cd7ab
commit
79862a3fa0
6
main.js
6
main.js
|
|
@ -21,15 +21,11 @@ import {
|
|||
} from './store'
|
||||
export function createApp() {
|
||||
const app = createSSRApp(App)
|
||||
|
||||
// 将store挂载到全局
|
||||
app.config.globalProperties.$store = store
|
||||
|
||||
// 从缓存读取系统信息(已在App.vue中获取)
|
||||
const systemInfo = uni.getStorageSync('systemInfo') || {}
|
||||
app.config.globalProperties.$system = systemInfo.platform == 'ios' ? 'iOS' : 'Android'
|
||||
app.config.globalProperties.$systemInfo = systemInfo
|
||||
uni.setStorageSync('version', '1.1.0')
|
||||
uni.setStorageSync('version', '1.0.0')
|
||||
app.use(globalMethods);
|
||||
return {
|
||||
app
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
"transformPx": false,
|
||||
/* 5+App特有相关 */
|
||||
"app-plus": {
|
||||
"darkmode": false,
|
||||
"usingComponents": true,
|
||||
"nvueStyleCompiler": "uni-app",
|
||||
"compilerVersion": 3,
|
||||
|
|
|
|||
|
|
@ -197,20 +197,23 @@ onLoad(async () => {
|
|||
// 初始获取状态栏高度和屏幕高度
|
||||
updateStatusBarHeight()
|
||||
data.windowHeight = await deviceUtil.getWindowHeight()
|
||||
|
||||
})
|
||||
|
||||
onShow(() => {
|
||||
// #ifdef APP-PLUS
|
||||
util.setAndroidSystemBarColor('#F0F3F8')
|
||||
plus.navigator.setStatusBarStyle("light");
|
||||
// #endif
|
||||
|
||||
// 获取快速入口配置
|
||||
data.menuList = fastEntranceData()
|
||||
|
||||
// 从缓存读取余额
|
||||
const cachedBalance = storage.get('balance')
|
||||
if (cachedBalance !== null) {
|
||||
data.balance = cachedBalance
|
||||
}
|
||||
})
|
||||
|
||||
onShow(() => {
|
||||
// #ifdef APP-PLUS
|
||||
util.setAndroidSystemBarColor('#F0F3F8', "#ffffff")
|
||||
// #endif
|
||||
|
||||
// 获取快速入口配置
|
||||
data.menuList = fastEntranceData()
|
||||
|
||||
getRecentBills()
|
||||
})
|
||||
|
|
@ -228,6 +231,7 @@ const fastEntranceData = () => {
|
|||
// 获取账单最新的三条余额相关的数据
|
||||
const getRecentBills = () => {
|
||||
const allBillList = getBillList()
|
||||
|
||||
// 按时间降序排序
|
||||
const sortedList = [...allBillList].sort((a, b) => {
|
||||
const timeA = a.itemInfoList.find(info => info.key == 'createTime')?.value || 0
|
||||
|
|
@ -235,9 +239,12 @@ const getRecentBills = () => {
|
|||
return new Date(timeB) - new Date(timeA)
|
||||
})
|
||||
|
||||
console.log('sortedList', sortedList)
|
||||
|
||||
// 获取前3条
|
||||
const recentBills = sortedList.filter(item => item.payMethod == '余额').slice(0, 3)
|
||||
|
||||
console.log('recentBills', recentBills)
|
||||
// 转换数据
|
||||
data.changeDetailList = recentBills.map(item => {
|
||||
const createTime = item.itemInfoList.find(info => info.key == 'createTime')?.value || new Date()
|
||||
|
|
@ -717,7 +724,7 @@ const onMenuScroll = (e) => {
|
|||
|
||||
.title-right>.text {
|
||||
font-size: 14px;
|
||||
color: var(--text-color);
|
||||
color: #979797;
|
||||
}
|
||||
|
||||
.right-icon {
|
||||
|
|
|
|||
|
|
@ -473,6 +473,9 @@ let { billData, datePickerData, selectItemInfo } = toRefs(data)
|
|||
onShow(() => {
|
||||
// #ifdef APP-PLUS
|
||||
util.setAndroidSystemBarColor('#F5F5F5')
|
||||
setTimeout(() => {
|
||||
plus.navigator.setStatusBarStyle("dark");
|
||||
}, 500);
|
||||
// #endif
|
||||
})
|
||||
|
||||
|
|
@ -791,6 +794,9 @@ const onRightClick = async () => {
|
|||
billData.value.payMethod = "余额"
|
||||
}
|
||||
addBill(billData.value)
|
||||
const allBillList = getBillList()
|
||||
|
||||
console.log("getBillDataList------", allBillList)
|
||||
}
|
||||
|
||||
uni.showToast({
|
||||
|
|
|
|||
|
|
@ -319,6 +319,9 @@ onShow(() => {
|
|||
getBillData(data.billId)
|
||||
// #ifdef APP-PLUS
|
||||
util.setAndroidSystemBarColor('#F5F5F5')
|
||||
setTimeout(() => {
|
||||
plus.navigator.setStatusBarStyle("dark");
|
||||
}, 500);
|
||||
// #endif
|
||||
})
|
||||
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
<template v-slot:center>
|
||||
<view class="nav-bar-search flex-align-center flex-1">
|
||||
<image class="search-icon" src="/static/image/bill/bill-list/search-black.png" mode=""></image>
|
||||
<input type="text" class="search-input flex-1" placeholder="请输入搜索内容" />
|
||||
<input type="text" class="search-input flex-1" placeholder="请输入交易记录" />
|
||||
<view class="line h100"></view>
|
||||
<view class="search-button">搜索</view>
|
||||
</view>
|
||||
|
|
@ -249,7 +249,9 @@ onShow(() => {
|
|||
timingFunc: 'easeIn'
|
||||
}
|
||||
})
|
||||
setTimeout(() => {
|
||||
plus.navigator.setStatusBarStyle("dark");
|
||||
}, 500);
|
||||
// #endif
|
||||
})
|
||||
|
||||
|
|
@ -258,6 +260,8 @@ onShow(() => {
|
|||
*/
|
||||
const getBillDataList = () => {
|
||||
const allBillList = getBillList()
|
||||
|
||||
console.log("getBillDataList------", allBillList)
|
||||
// 按月份分组
|
||||
const groupList = []
|
||||
allBillList.forEach(item => {
|
||||
|
|
|
|||
|
|
@ -75,7 +75,9 @@ onLoad((options) => {
|
|||
onShow(() => {
|
||||
// #ifdef APP-PLUS
|
||||
util.setAndroidSystemBarColor('#ffffff')
|
||||
setTimeout(() => {
|
||||
plus.navigator.setStatusBarStyle("dark");
|
||||
}, 500);
|
||||
// #endif
|
||||
})
|
||||
|
||||
|
|
|
|||
|
|
@ -175,9 +175,6 @@
|
|||
} = toRefs(data);
|
||||
|
||||
onLoad(async () => {
|
||||
// 启动时获取数据
|
||||
fetchUserData()
|
||||
|
||||
// 获取平台信息
|
||||
const systemInfo = uni.getSystemInfoSync()
|
||||
data.platform = systemInfo.platform
|
||||
|
|
@ -185,6 +182,8 @@
|
|||
})
|
||||
|
||||
onShow(() => {
|
||||
// 启动时获取数据
|
||||
fetchUserData()
|
||||
// 每次显示时刷新数据
|
||||
setUserData()
|
||||
// 获取系统信息
|
||||
|
|
@ -194,6 +193,9 @@
|
|||
data.windowHeight = systemInfo.windowHeight;
|
||||
// #ifdef APP-PLUS
|
||||
util.setAndroidSystemBarColor('#F0F4F9')
|
||||
setTimeout(() => {
|
||||
plus.navigator.setStatusBarStyle("dark");
|
||||
}, 500)
|
||||
// #endif
|
||||
})
|
||||
|
||||
|
|
|
|||
|
|
@ -39,6 +39,9 @@ export const store = reactive({
|
|||
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
// 定义操作方法
|
||||
export const useStore = () => {
|
||||
// 用户相关操作
|
||||
|
|
@ -83,10 +86,6 @@ export const useStore = () => {
|
|||
return store.billList
|
||||
}
|
||||
|
||||
// 手动保存账单列表(替代自动监听)
|
||||
const saveBillList = debounce(() => {
|
||||
storage.set('bill_list', store.billList)
|
||||
}, 500)
|
||||
|
||||
// 优化后的监听:使用防抖减少存储频率
|
||||
const debouncedSaveSettings = debounce((newValue) => {
|
||||
|
|
@ -105,7 +104,12 @@ export const useStore = () => {
|
|||
{ deep: true }
|
||||
);
|
||||
|
||||
// 移除billList的自动监听,改为手动调用saveBillList
|
||||
// 监听billList改变自动保存
|
||||
watch(
|
||||
() => store.billList,
|
||||
(newValue) => storage.set('bill_list', newValue),
|
||||
{ deep: true }
|
||||
);
|
||||
|
||||
// 获取系统信息(从缓存读取)
|
||||
const getSystemInfo = () => {
|
||||
|
|
@ -124,7 +128,6 @@ export const useStore = () => {
|
|||
updateBill,
|
||||
deleteBill,
|
||||
getBillList,
|
||||
saveBillList,
|
||||
getSystemInfo
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -387,7 +387,6 @@ export const util = {
|
|||
let window = plus.android.invoke(activity, "getWindow");
|
||||
plus.android.invoke(window, "setNavigationBarColor", colorInt);
|
||||
uni.setNavigationBarColor({
|
||||
frontColor: frontColor,
|
||||
animation: { // 动画效果
|
||||
duration: 100,
|
||||
timingFunc: 'easeIn'
|
||||
|
|
@ -395,7 +394,6 @@ export const util = {
|
|||
})
|
||||
setTimeout(function () {
|
||||
uni.setNavigationBarColor({
|
||||
frontColor: frontColor,
|
||||
animation: { // 动画效果
|
||||
duration: 100,
|
||||
timingFunc: 'easeIn'
|
||||
|
|
@ -407,7 +405,6 @@ export const util = {
|
|||
} catch (err) {
|
||||
console.log("状态栏修改失败", err);
|
||||
uni.setNavigationBarColor({
|
||||
frontColor: frontColor,
|
||||
animation: { // 动画效果
|
||||
duration: 100,
|
||||
timingFunc: 'easeIn'
|
||||
|
|
|
|||
Loading…
Reference in New Issue