Flutter 中的状态管理 状态管理是前端开发中很常见的一个概念,有幸在几年前写过一点点 React,当时我们用的是 dva 也就是一种 redux 的衍生解决方案,当时的感觉是前端终于成为应用开发了,不再像很久之前做的网页那样繁琐(虽然我现在还在用传统方式开发网站😁)。 而在 Flutter 的开发中很像前端的开发,直接就有类似的操作,所以我们也要来研究一下这些问题。
Flutter 跨组件状态共享 Provider 的实现 我们都知道 Provider 是 Flutter 官方推荐的状态管理方式之一,实现也是依托于 InheritedWidget 这个组件,但是我们这里先不看 Provider 源码,先来看看自己能否使用之前对 InheritedWidget 的了解来实现一个简单的 Provider。
Flutter 理解数据共享组件 InheritedWidget InheritedWidget是Flutter中非常重要的一个功能型组件,它提供了一种数据在widget树中从上到下传递、共享的方式,比如我们在应用的根widget中通过InheritedWidget共享了一个数据,那么我们便可以在任意子widget中来获取该共享的数据!这个特性在一些需要在widget树中共享数据的场景中非常方便!
Flutter setState之后做了什么? 官方注释:通知Framework层:该State对象的内部状态发生了变化。无论你何时改变一个State对象的内部状态,请在传递给setState函数中做出修改。
Flutter 中使用 Bloc 来处理数据更新 UI Bloc 是一种设计模式,由 paolo soares 和 cong hui 在2018年Google dartconf上提出,Bloc 是英文 Business Logic Component 的缩写,它是一种面向组件和业务逻辑的分离的优雅策略。