From 4e4b7dac696b489045a0cbd6e7326dfe477add3a Mon Sep 17 00:00:00 2001
From: wangxiaogang <1433729587@qq.com>
Date: Tue, 9 Jun 2026 09:13:28 +0800
Subject: [PATCH] =?UTF-8?q?fix:=20=E5=91=A8=E6=9C=9F=E8=B4=A6=E5=8D=95?=
=?UTF-8?q?=E5=BC=B9=E7=AA=97=20=E2=80=94=20Numpad=20=E7=A7=BB=E5=88=B0=20?=
=?UTF-8?q?scroll-view=20=E5=A4=96=20+=20=E9=98=B2=E9=87=8D=E5=A4=8D?=
=?UTF-8?q?=E6=8F=90=E4=BA=A4=20+=20@confirm=20=E7=BB=91=E5=AE=9A?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
client/src/pages/recurring/index.vue | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/client/src/pages/recurring/index.vue b/client/src/pages/recurring/index.vue
index 656390f..dabfd26 100644
--- a/client/src/pages/recurring/index.vue
+++ b/client/src/pages/recurring/index.vue
@@ -135,9 +135,11 @@
-
-
+
+
+
+
@@ -167,6 +169,7 @@ const loading = ref(true)
const showModal = ref(false)
const editingId = ref(null)
const amountStr = ref('')
+const saving = ref(false)
const syncCount = ref(0)
const freqMap: Record = {
@@ -254,6 +257,7 @@ async function toggleActive(item: RecurringTemplate) {
}
async function handleSubmit() {
+ if (saving.value) return
const amount = Math.round(parseFloat(amountStr.value || '0') * 100)
if (isNaN(amount) || amount <= 0) {
uni.showToast({ title: '请输入金额', icon: 'none' })
@@ -264,6 +268,7 @@ async function handleSubmit() {
return
}
+ saving.value = true
try {
const data = {
amount,
@@ -284,6 +289,8 @@ async function handleSubmit() {
uni.showToast({ title: editingId.value ? '已更新' : '已添加', icon: 'success' })
} catch {
uni.showToast({ title: '保存失败', icon: 'none' })
+ } finally {
+ saving.value = false
}
}
@@ -426,7 +433,7 @@ function goBack() { uni.navigateBack() }
&:active { background: darken($border, 5%); }
}
.modal-close-text { font-size: $font-2xl; color: $text-sec; line-height: 1; }
-.modal-body { flex: 1; padding: $space-md $space-xl; max-height: 60vh; }
+.modal-body { flex: 1; padding: $space-md $space-xl; max-height: 45vh; }
.modal-footer {
padding: $space-md $space-xl; border-top: 2rpx solid $border;
}