在数组反应钩子中添加项目并访问它们

时间:2021-06-10 19:04:00

标签: reactjs typescript react-hooks formik formik-material-ui

我正在尝试在数组中添加一个项目,我使用下拉列表中的 onChange() 访问它们,但它没有被保存在下面是我的来源:

const [selectedValue, setSelectedValue] = useState<string[]>([]);

const handleChange = useCallback( (event:React.ChangeEvent<HTMLInputElement>) => {
const { value } = event.target;
if (value){
  setSelectedValue([...selectedValue, value]);
  setFieldValue('company.data.organisation', value);
  console.log('---', selectedValue)
}

},[setSelectedValue, selectedValue]);

然后我访问下拉列表中的 onChange() 如下:

           <Field
                onChange={handleChange}
                component={TextField}
                select
                fullWidth
                size="small"
                variant="outlined"
                name="company.data.organisation">
                { selectedValue.length > 0 ? selectedValue.map(name => (
                <MenuItem value={name} key={`company-data-${name}`}>
                  {name}
                </MenuItem>
              )):
              chosenLegalForm.cooperation_form.map(({ value, name }) => (
                <MenuItem value={value} key={`company-data-${value}`}>
                  {name}
                </MenuItem>
              ))
            }
              </Field>

0 个答案:

没有答案