三行代码  ›  专栏  ›  技术社区  ›  Sam

ReactJs从材质UI自动完成中获取id而不是值

  •  0
  • Sam  · 技术社区  · 1 月前

    我正在使用Material UI Auto complete获取国家列表,我需要获取所选国家id以发送回数据库。

    <Autocomplete
       options={this.state.countries.map(option => option.name_en + ` (${option.name_native})`)}
       id="discountType"
       value={this.state.makeCountry}
       onChange={(e, value) => this.logCountry(e, value)}
       renderInput={(params) =>
       <TextField
          {...params}
          variant="outlined"
          label="Select make country"
       />}
    />
    

    我需要将option.id与值一起发送到logCountry函数。

    1 回复  |  直到 1 月前
        1
  •  1
  •   Daniel Baldi    1 月前

    在创建 options

    const options = this.state.countries.map(option => ({ id: option.id, label: option.name_en + ` (${option.name_native})`}));
    

    onChange={(e, value) => this.logCountry(e, value.id)} .

    MUI Autocomplete's docs stackblitz示例来实现这样的行为,您可以检查一下 here .