MAUI加Blazor做一个跨平台的记账APP(一)环境准备
曾经用python做了一个web版的记账页面,快速替代了已下线的网易有钱app的一些功能。可惜这个app用不了了,只能导出数据然后自己做。功能差不多,图表也有,虽然显得简陋点,但可以用就行。现在一天不记账就不舒坦。
放在知乎上了,还不错,几年过去了有两千人收藏了,看来还是有用的:用Django做一个简单的记账网站
最近有点时间,打算做一个跨平台的app,兼顾android,ios,web,桌面端,思来想去,最后选择了C#的MAUI加blazor。于是决定做的过程中也以一些博客文章的方式记录一下,方便自己和同兴趣的人。
这里不记录后端restful service的创建过程,主要记录跨平台app的创建过程。
下载visual studio,选择对应的模块进行安装,勾选.net, maui,blazor对应的,安装完成即可。
先用visual studio创建一个模板,选择new -> 搜索并选中.Net MAUI Blazor App -> 填入project name solution name之类的信息 -> 点击完成。
此时会生成一个模板,里面包含了counter等几个最基础的页面。现在就可以在VS的界面上选择桌面端还是android模拟器还是iOS模拟器来进行debug,能运行看到效果了。
我曾经在mac上build时提示了xcode版本问题,当然没必要升级系统,太麻烦了,更改一下配置即可,记录在这里:Visual Studio用MAUI项目构建ios报xcode版本错的问题解决
我用的是mac为主力机,xcode之类的环境都是配好了的。如果需要android模拟器,记得配置一下android sdk相关的环境,这里不赘述了。
用Visual Studio时配置都还是很简单的,如果遇到了其他问题我再来记录到这里。接下来开始新增页面。
既然要做一个记账用的app,那么先预设一下有哪些页面,请求哪些后端接口。
按照之前用django做的记账网站,需要有
- 账户全览显示: 显示有哪些账户比如银行卡、黄金、股票、现金、借款等,分别是多少钱
- 记账细目:显示特定时间段的账目,哪些支出,哪些收入,可以设置时间段搜索,可以通过关键词或类别搜索
- 记账选项区域:这里就是记账这个行为的体现,比如选哪些类别,什么时间,什么注释,收入支出还是账户内转移
- 图表:这里是显示汇总的图表,饼状图看各类别的占比,线形图看收入支出变化,可以按时间段筛选,一眼就很明了
- 设置:这里是设置比如增加自定义的收入支出大类别小类别,会预设一些默认的类别,但难免有自定义需求,还应该支持删除记录、更改记录等
也即是说计划做4个页面,比如有底部菜单用于切换(当然不一定是底部),从左到右分别是账户总览、记账细目、图表、设置,然后底部正中间加一个记账按钮进入到记账页面,记账保存后返回到记账细目。
环境好了,计划有了,下一篇开始新增第一个账户页面。