代码之家  ›  专栏  ›  技术社区  ›  joedotnot

如何从ajax调用加载初始值

  •  0
  • joedotnot  · 技术社区  · 6 年前

    看下面的例子 https://codesandbox.io/s/km2n35kq3v

    初始值是硬编码的。

    <Wizard
          initialValues={{ employed: true, stooge: 'larry' }}
    

    但是,我想在componentdidmount中进行ajax调用,获取初始值,然后在调用完成时(重新)设置初始值。

    <Wizard
          initialValues={this.state.myInitValues}
    

    什么也没有发生,当表单重新呈现时,初始值不会改变-我缺少什么?

    1 回复  |  直到 6 年前
        1
  •  1
  •   Erik R.    5 年前

    这个例子只适用于硬编码值

    不。

    只要这些值在树中取得更高,则 <Wizard/> 组件,它们可以作为道具传入。反应终形甚至有细颗粒 isEqual() 控制何时 initialValues 属性是否更改(在这种情况下,表单将重新初始化)。

    希望这有帮助…

        2
  •  0
  •   joedotnot    6 年前

    我想出来了…这个例子只适用于硬编码的值,否则我不应该假设。

    原来initialValues被传递到向导组件,并在构造函数的向导组件中设置为state。

    当ajax调用返回时,构造函数不会再次执行。

    推荐文章