关于状态Provider笔记

Provider及其代码优化

简单记录初次接触Provider的笔记。

首先老规矩加入依赖

这里如果直接provider: 不加版本号,就是获取最新版本,其他依赖也应该差不多(这里我还去github查过了哈哈哈)。

为什么要用Provider?

百度了一下,为了优化代码提高性能,我自己的理解是这样的,优化性能,使用了provider可以指定刷新作用域,就是在一定程度上提高了性能,本来flutter就是堪比原生性能(意思是还是差一点),所以为了提高用户体验度能不能为了方便一直去刷新界面,所以我们需要使用状态管理去抽离页面和状态,在不是长时间动画的时候没必要使用StatefulWidget的时候尽量的使用StatelessWidget来提升性能。这里我是第一次接触Provider所以只是简单了解一下,后面在慢慢更新这篇笔记。

这里写一个东西本来是需要在StatefulWidget中去调用setState方法去刷新整个界面。我这里是写了column,上下分别是IconButton,点击事件是增加或者减少中间的number,

对就是这样的一个简陋的页面,

话不多说,上代码

一个最简单的状态管理

用MultiProvider()组件化定作用域这里就是包裹了Home(),调用类,先调用构造方法(37行),所以不用去刷新Home()以外的,setState方法我看百度应该是刷新了全部页面的,所以这个在很大程度上减小了flutter的性能使用,一定程度上优化了代码,值得注意的是在provider_version 4.0.0后ChangenotiferProvider中builder属性有所改变,之后使用create属性,而且version4.0.0以前不用return直接调用,4.0.0以后就必须使用return不然拿不到context。

这样相当于抽离了页面和状态,在代码性能上得到了很大的提升。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值