Flutter学习实战:实现一个one的客户端

前言部分

本着大前端的概念(当然其实还需要学习js+html),为了给自己添加一个混合开发的技能,前段时间一直在学习Flutter相关的知识,和以前学习RN对比来说的,我的感受是RN写起来和调试起来都不太友好,相对的Flutter可能就要好很多,我猜想RN应该还是有些坑无法跳过去,这也是它这么久没开正式的1.0版本的原因吧。

本文主要简单介绍了一下使用Flutter实现一个简易版的ONE客户端,内容还完善,但是一直在持续打磨中,继续增加自己对Flutter的理解。

GitHub传送门

内容部分

项目中使用了ONE一个项目的api完成,该项目只用于学习交流使用,不得用于商业用途,如有侵权请及时联系我,马上删除。联系QQ:591871713

实现了一部分功能,后续还在持续的把接口添加上去。
  1. HOME页面第一层布局实现,包括左右滑动查看近期的文章
  2. ALL页面第一层布局实现。点击查看分类内容(这里比较尴尬,接口返回了超级长的html串,导致有的时候无法显示),
  3. ME页面基本布局实现,用户信息缓存到本地。
遇到的问题记录
  1. 首先是使用flutter_webview_plugin插件的问题,该插件还不能比较好的呈现样式比较复杂的网页效果,并且WebviewScaffold不在Flutter的Widget树中而是直接在最上层的,所以就没办法在上面谈一个窗口了。
  2. 使用flutter_html标签解析返回的html字符串,解析的效果也差强人意,有些样式完全是识别不出来的,查看说明文档,应该是有的标签黑没办法转换为Flutter的Widget标签。

使用中对web view的支持差的比较多,但是如果直接加载一个网页链接倒是效果还可以。

  1. 布局部分比较灵活,都是使用的常规widget就能实现大部分的效果了。
项目截图如下

Flutter学习实战:实现一个one的客户端

结尾

学习Flutter的目的也是为了更好的跟随现在的技术发展方向,不一定会应用到实际开发中,这个还要看机会,但是我个人觉得未来混合开发也是一个趋势,通过更短的周期,提供出两个平台的项目,节约资源提高效率。

有问题欢迎纠正,谢谢啦

如果对你有帮助就点个赞把。