跳到主要内容

创刊于 2016 总第 3337 期


Goslion的Blog

一个专注技术与写作的个人博客,记录日常与技术沉淀,马上十年了


2026年10月9日 星期五 总第 3337 期 今日 2 篇 · 存稿 418 篇

20230905

状态管理

子组件要使用父组件的值,直接传入就可以

子组件修改父组件的值,可以把父组件修改函数传给子组件

状态提升:把子组件的状态定义到父组件中

父组件修改子组件的值,将子组件的值封装到一个继承ChangeNotifier的类中,然后在父组件中定义这个类的实例,子组件中传入实例,通过实例中的修改方法,通知组件状态修改,刷新页面。

复杂的数据状态管理:控制器+状态提升

注:和controller的原理相似。

将界面与数据分离

使用ListenableBuilder 使重绘范围最小,Listenable.merge,合并监听多个数据的改变

使用ValueNotifier 简单数据的监听,和ref类似

InheritedWidget继承式组件