2022 年了 flutter 状态管理哪家强? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
omysho
V2EX    Flutter

2022 年了 flutter 状态管理哪家强?

  •  
  •   omysho 2021-12-28 13:11:04 +08:00 via Android 4954 次点击
    这是一个创建于 1383 天前的主题,其中的信息可能已经有所发展或是发生改变。

    声明式 UI 最重要的状态管理方面

    Flutter 哪家强?

    形如 React-Redux Vue-Vuex Compose-JetpackMVVM

    Flutter 现在发展出统治级的框架了吗?

    17 条回复    2022-07-12 00:27:29 +08:00
    iold
        1
    iold  
       2021-12-28 13:15:17 +08:00
    用过 get
    hahastudio
        2
    hahastudio  
       2021-12-28 13:17:02 +08:00
    BLoC ?
    get 我只当简易 DI 用的
    dcalsky
        3
    dcalsky  
       2021-12-28 13:40:04 +08:00
    最近 Getx 在 reddit 上被猛批
    我一直在用 mobx ,在 flutter 上算小众,但毕竟 web 也在用,上手快。
    bloc 用的人也很多 > redux
    NewTab12138
        4
    NewTab12138  
       2021-12-28 13:43:25 +08:00
    riverpod
    masterclock
        5
    masterclock  
       2021-12-28 13:44:15 +08:00
    用过 Get ,能解决问题,但感觉比较奇葩
    Vitta
        6
    Vitta  
       2021-12-28 13:51:24 +08:00
    @dcalsky #3 为啥被批,有啥坑吗?
    hahastudio
        7
    hahastudio  
       2021-12-28 13:54:21 +08:00
    loginbygoogle
        8
    loginbygoogle  
       2021-12-28 19:47:25 +08:00
    自己写一个
    huxiaofan1223
        9
    huxiaofan1223  
       2021-12-28 23:11:47 +08:00 via iPhone
    provider 怎么样
    Cabana
        10
    Cabana  
       2021-12-30 17:24:26 +08:00
    大概看了下, 基本上都是在说作者人品不好.
    https://www.reddit.com/r/FlutterDev/comments/q95l2x/why_is_getx_hated/
    Cabana
        11
    Cabana  
       2021-12-30 17:35:54 +08:00
    @Cabana #10 公司目前也在用 Getx, 说实话新手上手的确是快, 也能很快产出东西. 但是建议在上手后还是多了解一下其他的状态管理框架以及基础的 InheritedWidget 原理.
    hahastudio
        12
    hahastudio  
       2021-12-31 10:28:06 +08:00
    @Cabana
    如果只是说那个 package 的话,这个可能是更好的信息源: https://www.reddit.com/r/FlutterDev/comments/po1bei/why_is_getx_such_a_bad_state_management/
    lodisy
        13
    lodisy  
       2022-02-05 02:42:14 +08:00 via Android
    Riverpod
    fxt0706
        14
    fxt0706  
       2022-02-17 10:41:58 +08:00
    用过 Google 自家的 Provider 和 GetX 。

    Provider 的问题是无论你要实现粗略还是精细的状态管理,你都需要写一大堆繁杂嵌套的代码,好处就是这个是官方维护的,执行效率不是问题,并且当你熟练掌握 Provider 的使用后,意味着你基本理解了 Flutter 状态刷新的背后机制。

    GetX 相比起来代码直观简单很多(更傻瓜),并且非常容易解耦,自带了类似 get_it 的注入功能,并且集成了许多好用的模板( get_cli ,get_snippets )。但是作者的维护积极性以及最终 app 的运行效率都会更糟一些,许多建设性的 issue open 了两年多都没下文,且初学者直接用的话容易对各类问题一知半解。

    但话说回来,Flutter 自身就很有问题,一个官方最早做的状态管理( stateful )不好用到如此多的第三方状态管理库相互“厮杀”就挺怪的。
    MushiUta
        15
    MushiUta  
       2022-02-25 00:10:23 +08:00
    对于我来说 Getx 最大的好处是用法和 Android Architecture Components 很相似,特别便于理解。
    akaHenry
        16
    akaHenry  
       2022-03-03 16:20:28 +08:00
    GetX +1 . 非常好用.

    Provider / bloc 这种就不要再用了.
    vermiliondun
        17
    vermiliondun  
       2022-07-12 00:27:29 +08:00 via Android
    自然是 Riverpod 没得选
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2674 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 13:47 PVG 21:47 LAX 06:47 JFK 09:47
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86