feat: v1.3 交互增强
新增功能: - 账单左滑删除(替代长按,更符合移动端习惯) - 输入震动反馈(Numpad 按键时调用 uni.vibrateShort) - 保存成功动画(Checkmark 弹出动画) - 分类图标滚动到选中项(编辑记录时自动定位) 组件更新: - TransactionItem 支持左滑露出删除按钮 - Numpad 添加震动反馈 - SaveSuccess 新增保存成功动画组件
This commit is contained in:
@@ -3,10 +3,10 @@
|
||||
<view class="key" v-for="key in keys" :key="key" @tap="onKeyTap(key)">
|
||||
<text class="key-text">{{ key }}</text>
|
||||
</view>
|
||||
<view class="key fn" @tap="emit('delete')">
|
||||
<view class="key fn" @tap="onDelete">
|
||||
<SvgIcon name="trash" :size="36" color="#FF8C69" />
|
||||
</view>
|
||||
<view class="key eq" @tap="emit('confirm')">
|
||||
<view class="key eq" @tap="onConfirm">
|
||||
<SvgIcon name="check" :size="36" color="#FFFFFF" />
|
||||
</view>
|
||||
</view>
|
||||
@@ -19,9 +19,26 @@ const keys = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '.', '0', '00']
|
||||
|
||||
const emit = defineEmits(['input', 'delete', 'confirm'])
|
||||
|
||||
function vibrate() {
|
||||
try {
|
||||
uni.vibrateShort({ type: 'light' })
|
||||
} catch {}
|
||||
}
|
||||
|
||||
function onKeyTap(key: string) {
|
||||
vibrate()
|
||||
emit('input', key)
|
||||
}
|
||||
|
||||
function onDelete() {
|
||||
vibrate()
|
||||
emit('delete')
|
||||
}
|
||||
|
||||
function onConfirm() {
|
||||
vibrate()
|
||||
emit('confirm')
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
Reference in New Issue
Block a user