首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Flutter 如何跨组件传递数据

InheritedWidget InheritedWidget 是 Flutter 中非常重要的一个功能型 Widget,它可以高效的将数据在Widget 树中向下传递、共享,这在一些需要在 Widget...树中共享数据的场景中非常方便,如 Flutter 中,正是通过 InheritedWidget 来共享应用主题( Theme )和 Locale (当前语言环境)信息的。...Notification Notification 是 Flutter 中进行跨层数据共享的另一个重要的机制。...这样的数据传递机制适用于子 Widget 状态变更,发送通知上报的场景。 Flutter 中将这种由子向父的传递通知的机制称为通知冒泡(Notification Bubbling)。...但是,组件间数据传递还有一种常见场景:这些组件间不存在父子关系。这时,事件总线 EventBus 就登场了。 事件总线是在 Flutter 中实现跨组件通信的机制。

2.7K10

Flutter路由管理和页面参数的传递(获取&返回

,不能像Android的 setResult 一样往上一级页面传递数据。...所谓路由管理,就是管理页面之间如何跳转,通常也可被称为导航管理。...这和原生开发类似,无论是 Android 还是 iOS ,导航管理都会维护一个路由栈,路由入栈( push )操作对应打开一个新页面,路由出栈( pop)操作对应页面关闭操作,而路由管理主要是指如何来管理路由栈...push 将给定的路由入栈(即打开新的页面),返回值是一个Future对象,用以接收新路由出栈(即关闭)时的返回数据。...print(data.toString()); }; pop 将栈顶路由出栈,入参为一个 object 类型的对象为当前页面关闭时返回给上一个页面的数据

4.4K40

Flutter如何状态管理

- 如何决定使用哪种管理方法?下面给出的一些原则可以帮助你做决定: - 如果状态是用户数据,如复选框的选中状态、滑块的位置,则该状态最好由父Widget管理。...- 如果修改了某一个属性,需要刷新多个地方数据。...比如修改用户城市id数据,那么则刷新首页n处的接口数据,这个时候可以用订阅监听修改状态 ### 02.状态管理方案分类 - setState状态管理 - 优点: - 简单场景下特别适用...,可读性差 - InheritedWidget状态管理 - 优点 - 方便数据传输,可以基于InheritedWidget达到逻辑和视图解耦的效果 - flutter...如果不相同,则返回 true。 - builder:返回 Widget 的地方,第二个参数 定义的参数,就是我们刚才 selector 中返回的 参数。

1K10
领券