前端新手:多表单的系统, redux 是 react 最好的选择吗 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Wichine

前端新手:多表单的系统, redux 是 react 最好的选择吗

  •  
  •   Wichine 2020 年 4 月 3 日 3967 次点击
    这是一个创建于 2211 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近公司在开新的项目,前端敲定了用 React, 因为系统有大量的表单,所以原生 React 不太够用,现在考察了一圈普遍用的比较多的是 Redux, 但我用了一阵子 Redux, 这个 dispatch - action - reducer 模式,感觉很奇怪,每次 disaptach 全部 reducer 都要过一遍, 而且异步 action 用起来很难把握。请问有更好的 library 可以取代 redux 来解决跨域和大量表单问题吗

    5 条回复    2020-04-13 06:58:24 +08:00
    yuang
        1
    yuang  
       2020 年 4 月 3 日 via Android
    Context 申请出战
    crs0910
        2
    crs0910  
       2020 年 4 月 3 日
    大量表单和 Redux 有什么联系?
    GDC
        3
    GDC  
       2020 年 4 月 3 日 via iPhone
    不知道有啥关系+1…
    LinYa
        4
    LinYa  
       2020 年 4 月 3 日 via iPhone
    解决跨域?
    gouflv
        5
    gouflv  
       2020 年 4 月 3 日 via iPhone
    redux 已经是历史了
    adjusted
        6
    adjusted  
       2020 年 4 月 3 日
    其实表单编辑的时候不需要同步数据到 redux state
    bnm965321
        7
    bnm965321  
       2020 年 4 月 3 日
    表单不用保存状态
    impl
        8
    impl  
       2020 年 4 月 3 日 via Android
    还是 angular 好
    Reol
        9
    Reol  
       2020 年 4 月 3 日
    同不知道大量表单和 Redux 的关系+1
    suinia
        10
    suinia  
       2020 年 4 月 3 日
    没有关系啊
    大量表单可以看看:formilyjs
    Perry
        11
    Perry  
       2020 年 4 月 3 日 via iPhone
    React Hook 不香吗?
    otakustay
        12
    otakustay  
       2020 年 4 月 3 日
    redux 从来不是表单的选择,你看看 redux-form 自己是个啥状态
    murmur
        13
    murmur  
       2020 年 4 月 3 日
    表单多不需要状态,需要的是 vue,先解决没有官方 if 和 for 的痛点
    toma77
        14
    toma77  
       2020 年 4 月 3 日
    mobx 可以一战
    fxy739371
        15
    fxy739371  
       2020 年 4 月 3 日
    rematch
    mxT52CRuqR6o5
        16
    mxT52CRuqR6o5  
       2020 年 4 月 3 日 via Android
    你的表单是指可以填写的表单吗?如果是的话可以看看 rc-form
    mxT52CRuqR6o5
        17
    mxT52CRuqR6o5  
       2020 年 4 月 3 日 via Android
    异步的问题可以看看 redux-thunk/redux-saga 或其他 redux 中间件 /redux 封装
    jruit
        18
    jruit  
       2020 年 4 月 3 日
    这个要根据表单的复杂度来定。表单本身其实用 vue 这样的双向绑定框架处理起来方便。但若表单特别复杂,涉及到多级组件传参,这个时候需要用状态管理库来解决。
    newdongyuwei
        19
    newdongyuwei  
       2020 年 4 月 3 日
    之前用过 redux-form,性能比较差。redux 太嗦,状态管理推荐试试 mobx,反正我们用了 mobx 再也不想 redux 。
    LeeeeeeezQ
        20
    LeeeeeeezQ  
       2020 年 4 月 3 日
    seki
        21
    seki  
       2020 年 4 月 3 日
    好奇跨域是怎么能用 redux 解决的?

    你先说说你的表单需求有什么吧,没有必要一定用 redux,但是需要先了解你的需求是什么
    dcatfly
        22
    dcatfly  
       2020 年 4 月 3 日
    跨域跟 redux 没有关系,解决异步可以用 redux-thunk/redux-saga,另外如果用 redux 推荐 redux-toolkit.
    表单状态不建议跟 redux 关联起来,如果没用其它框架推荐 formik 处理表单问题。
    Wichine
        23
    Wichine  
    OP
       2020 年 4 月 4 日
    @crs0910
    @GDC
    @Reol

    可能没说清楚, 是打算用 reudx + redux-form 来着
    Wichine
        24
    Wichine  
    OP
       2020 年 4 月 4 日
    @seki

    是一个金融类的管理员操作系统,有几十个不同模块去修改各种产品的状态和交易状态,每个模块涉及的数据都不同,最多的业务逻辑是在对用户输入信息的比较,计算,校验,分析,转化等。因为对 React 还不太熟,就感觉大量表单处理不好搞,就看上 Redux + Redux-form
    mandoon
        25
    mandoon  
       2020 年 4 月 13 日 via iPhone
    我是 react 前端,现在在做大批量表单系统,用的 formik,hooks,redux,组合。usestate 父容器,套个 hooks hoc 作为同意表单 ui,然后 formik 作为 container 封装层,再分发表单 ui 。redux 作为不同表之间业务逻辑的桥梁。基本满足需求。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3281 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 80ms UTC 11:22 PVG 19:22 LAX 04:22 JFK 07:22
    Do have faith in what you're doing.
    ubao msn 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