用户登录

打开 app.dart ,在 initState 方法里面执行了一个 initialize 方法,现在我们要把这个方法转移到 app_router 里面执行。先剪切一下上面定义的这个 initialize 方法。这样这个 app 可以是一个 Stateless 类型的小部件,把这个小部件转换成一个 StatelessWidget。在文件的顶部,把这些不再需要的导入全部都给它们删除掉。

app_router

打开 app_router,把之前剪切的 initialize 方法粘贴到这里。再选择导入这个方法需要用的 AppStorage ,还有下面这个 Auth,另外这里还需要用到 authModel。

在上面定义一个属性,用 late 标记一下,类型是 AuthModel,名字是 authModel。在 initState 方法里面,设置 authModel 的值,context.read,类型是 AuthModel 。

在这个 initialize 里面,用了 setState ,这里我们可以把它换成 appModel.setInitialize ,提供一个 false,它会把 appModel 里的 initialize 这个属性的值设置成 false,这样在应用的 pages 里面,也就不会包含 AppInitialize 相关的页面了。

最后别忘了在这个 initState 里面,执行一下 initialize 方法。

测试

重新启动一下应用,你会发现一开始会显示一个初始化, 然后又会显示应用的首页。

改进:将应用初始化放在 AppRouter 里执行《 Flutter 移动端实例:修复改进 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点