反应-在Apollo查询组件内部使用受控输入

时间:2018-12-11 05:18:07

标签: javascript reactjs react-apollo

我在Apollo查询组件中有一个表单。它的所有输入都是受控的,看起来像这样:

handleChangeValue = (value) => {
 this.setState(value);
}

<Input
 type="text"
 placeholder="Example"
 value={this.state.example}
 onChangeValue={this.handleChangeValue}
/>

问题在于输入的值取决于状态。因此,如果要用数据库中的数据填充输入,则必须执行以下操作:

<Query query={ACCOUNT_DETAILS} >
 {({ loading, error, data }) => {
  <Input
   type="text"
   placeholder="Example"
   value={data.example}
  />
 })
</Query>

但是,然后,我将如何更新输入值?

我考虑过要做这样的事情:

value={this.state.example || data.example}

我的输入将使用状态中的数据(如果存在),否则将使用查询返回的数据。这对我来说似乎不是最好的解决方案,有什么想法吗?

谢谢!

0 个答案:

没有答案