Saya memiliki kode material ui di bawah untuk select dropdown, yang tidak dapat memperbarui opsi yang dipilih di dropdown.

 <FormControl variant="outlined" className={classes.formControl}>
    <InputLabel ref={inputLabel} htmlFor="outlined-Name">
      Name
    </InputLabel>
    <Select
      value={values.Name}
      onChange={handleBChange}
      labelWidth={labelWidth}
       inputProps={{
       Name: 'Name',
       id: 'outlined-Name',
     }}
  >
  <MenuItem value="">
   <em>None</em>
  </MenuItem>
  <MenuItem value="1">Name1</MenuItem>
  <MenuItem value="2">Name2</MenuItem>
  <MenuItem value="3">Name3</MenuItem>
  </Select>
  </FormControl>

Dan di bawah ini adalah acara dan JS yang diperlukan.

const [values, setValues] = React.useState({
    Name: ''
});


const inputLabel = React.useRef(null);
const [labelWidth, setLabelWidth] = React.useState(0);
React.useEffect(() => {
    setLabelWidth(inputLabel.current.offsetWidth);
}, []);

const handleBChange = event => {
    event.preventDefault();
    debugger;
    setValues(oldValues => ({
        ...oldValues,
        [event.target.Name]: event.target.value,
    }));
};

Apa yang salah dalam kode saya? Mohon sarannya

0
Lara 25 Oktober 2019, 07:50

1 menjawab

Jawaban Terbaik

Saya pikir Anda perlu menggunakan nama bukan Nama sebagai

const handleBChange = event => {
event.preventDefault();
setValues(oldValues => ({
    ...oldValues,
    [event.target.name]: event.target.value,
}));
};

Semoga membantu

1
ibtsam 25 Oktober 2019, 04:59