关于flutter-redux的部分知识点,未整理

参考文档:
http://www.ruanyifeng.com/blog/2016/09/redux_tutorial_part_one_basic_usages.html
http://www.ruanyifeng.com/blog/2016/09/redux_tutorial_part_two_async_operations.html
https://segmentfault.com/a/1190000015579633

flutter-redux,主要用于项目的状态管理

通过store保存保存所有的数据
state是某个时点的数据,通过store.subscript监听state的变化
state的数据与被渲染到view层
view 层通过store.dispatch()发出通知action给store修改状态state
发出action,重新计算state的过程被成为reducer,这个过程中可以设置中间件

class MyApp extends StatelessWidget {

  final Store<int> store;

  MyApp({this.store});

  @override
  Widget build(BuildContext context) {
    return new StoreProvider(store: store, child: new MaterialApp(
        home:  new StoreConnector(builder: (BuildContext context,int counter){
        return new MyHomePage(title: 'Flutter Demo Home Page',counter:counter);
      }, converter: (Store<int> store){
        return store.state;
      }) ,
    ));
  }
}

使用flutter-redux,最外层要被StoreProvider控件包裹,否则会报错

new StoreConnector(builder: (BuildContext context,int counter){
        return new MyHomePage(title: 'Flutter Demo Home Page',counter:counter);
      }, converter: (Store<int> store){
        return store.state;
      }) 

使用StoreConnector控件将state传递到view,一定需要使用converter将Store中的状态转变成组件需要的状态,这里的builder函数的第二个参数就是converter函数的返回值

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容