卡比记账项目——Axios标签请求

封装后退按钮

点击后退按钮,我们需要回到上一级页面。
由于多个页面都需要做后退的按钮,不妨进行对后退功能进行一个封装。
统一添加点击事件。

截屏2022-11-25 12.11.23.png

创建标签

隐藏字段

点击新增按钮,跳转到tagcreate界面,但是这里少了一个字段,用户应该可以自主选择收入或者支出。
根据逻辑:在支出栏点击的新增理应归于支出,同理在收入栏点击的新增归于收入。用户没有必要再次选择。但是用户如果不填我们无法知道是收入还是支出。

所以我们需要用到隐藏字段,这个字段不需要显示,而是根据参数来跳转

找到新增按钮所在的Tags.tsx,加上一个RouterLink。做一个字符串的拼接,并且添加一个隐藏字段以区分收入或者支出。

截屏2022-11-25 12.23.47.png

因为我们加了一个隐藏字段kind,所以要在相应的地方补充这个字段
来到TagForm组件,在formData里面添加kind字段。

截屏2022-11-25 12.37.00.png

随后就可以发请求了

截屏2022-11-25 12.43.31.png
对于表单错误进行封装

截屏2022-11-25 12.43.52.png
完整请求:

截屏2022-11-25 12.58.38.png
现在就可以新增tag了。

长按编辑

触发长按效果

思路:触发touchStart事件timer开始计时,如果计时到一秒钟还没有松开,就自动弹到编辑页面,若一秒钟内松开了就重置timer。

开始实现:在Tags组件中,每一个Tag加上onTouchstart以及onTouchEnd事件。还有timer计时器。

截屏2022-11-25 13.05.56.png

一些逻辑:

截屏2022-11-25 13.14.03.png

考虑一个问题,用户长按后手指往下划就不能触发长按。需要添加一个限定条件:用户没有移开手指且没有移出tag的限定范围内才可以触发长按。

在最大的div中添加一个onTouchmove事件,获取鼠标当前位置所指向的元素,然后进行边界判断。

改写:

截屏2022-11-25 13.46.36.png

长按跳转

要跳转到对应的id,首先就要支持id,

截屏2022-11-25 14.23.45.png

接受id和tag
截屏2022-11-25 14.23.56.png

截屏2022-11-25 14.29.33.png

可以编辑

TagEdit中,如果id没有就返回错误
截屏2022-11-25 14.41.40.png

TagForm要接受id,

截屏2022-11-25 14.34.31.png

挂载之后去看有没有传id,有id的话就加载到formData

截屏2022-11-25 14.43.58.png
mock一下:

截屏2022-11-25 14.43.03.png

重写请求:

截屏2022-11-25 14.47.40.png

删除标签

我们的ui有两个删除按钮,区别就可以同通过查询参数来实现。

截屏2022-11-25 14.50.20.png
添加事件onDelete

截屏2022-11-25 14.58.04.png
另外一个按钮只需要添加一个参数,

截屏2022-11-25 14.57.39.png
添加报错提醒以及确认提示

截屏2022-11-25 15.01.27.png

完成

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容