技术经验谈 技术经验谈
首页
  • 最佳实践

    • 抓包
    • 数据库操作
  • ui

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 总纲
  • 整体开发框架
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

hss01248

一号线程序员
首页
  • 最佳实践

    • 抓包
    • 数据库操作
  • ui

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 总纲
  • 整体开发框架
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 学习资料

  • 技术选型

  • 要点

    • dart语言核心要点
    • 工程化

    • flutter异步
    • flutter工程化
    • flutter存储相关
    • flutter状态管理
      • getx和混合开发的栈管理:
    • flutter网络框架以及相关要点
    • flutter图片相关
    • flutter可观测性和调试
    • flutter插件开发
    • flutter路由管理
    • 遇到的问题
  • 经验

  • flutter
  • 要点
hss01248
2022-08-26
目录

flutter状态管理

# flutter状态管理

# 1 各种状态管理框架对比

我们把常见库按照如何传递状态来分类:

  • 用 widget (StatefulWidget, InheritedWidget, provider)
  • 用 stream (flutter_bloc, flutter_redux)
  • 用 subscription (getx, riverpod, flutter_mobx)
  • 用 graph (creator)

# getX专题

一篇入门使用:Flutter GetX使用---简洁的魅力! (opens new window)

一篇原理深度剖析:Flutter GetX深度剖析 | 我们终将走出自己的路(万字图文) (opens new window)

代码生成插件使用篇: GetX代码生成IDEA插件,超详细功能讲解(透过现象看本质) (opens new window)

https://www.codetd.com/article/13678155 (opens new window)getx tag使用

# getx tag在封装ui组件中的使用:

代码模板:

class CommonListComponent extends StatelessWidget {
  String tag ;
  CommonListLogic? logic ;
  CommonListState? state;



  CommonListComponent({ required this.tag}){
    initGetX();
  }

  void initGetX() {
    logic = Get.find<CommonListLogic>(tag: tag);
    if(logic == null){
      logic = Get.put(CommonListLogic(tag: tag),tag: tag);
    }
    state = logic!.state;
  }

  @override
  Widget build(BuildContext context) {
    return GetBuilder<CommonListLogic>(
      builder: (controller) {
        return Container();
      },
    tag: tag,);Container();
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
class CommonListLogic extends GetxController {
  final CommonListState state = CommonListState();

  String tag;
  CommonListLogic({ required this.tag});

  @override
  void onReady() {
    // TODO: implement onReady
    super.onReady();
  }

  @override
  void onClose() {
    // TODO: implement onClose
    super.onClose();
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

# getx和混合开发的栈管理:

https://github.com/skyNet2017/min_stack_manager

# 参考

十二、全面深入理解状态管理设计· Flutter 完整开发实战详解系列 (opens new window)

全面解析Flutter状态管理 (opens new window)

编辑 (opens new window)
上次更新: 2022/09/22, 18:30:14
flutter存储相关
flutter网络框架以及相关要点

← flutter存储相关 flutter网络框架以及相关要点→

最近更新
01
截图后的自动压缩工具
12-27
02
图片视频文件根据exif批量重命名
12-27
03
chatgpt图片识别描述功能
02-20
更多文章>
Theme by Vdoing | Copyright © 2020-2025 | 粤ICP备20041795号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式