先来个总结InheritedWidget的作用就是用来保存和存储数据,且可以供其子Widget使用,简而言之就是数据保存和传递的功能,且在Widget Tree中父组件保存的数据子组件也可以获取到,并且当InheritedWidget数据发生变化时,可以自动更新依赖的子孙组件。 阅读本篇博客的读者,博主假设你已经读过Flutter之GlobalKey详解。 在Flutter之GlobalKey详解一文中博主通过简单的登录功能讲解了GlobalKey的作用,即可以通过它来获取StatefulElement当前的状态State对象,从而用状态对象实施一些控制。且在Flutter之GlobalKey详解后面留下了一个问题:为甚可以通过Form.of(context)拿到FormState对象?下面就来回答这个问题!
阅读本篇博客之前需要以下知识基础: Flutter之UI渲染过程详解 1、每一个Widget都对应一个Element对象,而且每个Element都持有一个widget对象,也就是说通过Element可以拿到对应widget(记住该结论,后面分析InheritedElement会用到ÿ