18910140161

HTML-如何从JavaScript的下拉列表中选择对象的键-堆栈溢出

顺晟科技

2022-10-18 12:40:17

153

我有一个反应页面。

<代码>MyObject={1:";对象值";}函数app(){const[myValue,setMyValue]=UseState(";";)return(<;SELECT CLASSNAME=";Form-Control";ID=";价值屋";OnChange={(事件)=>;setMyValue(event.target.value)}值={myValue}>;{object.keys(myObject).map((key)=>;<;选项值={key}>;{MyObject[key]}<;/Option>;)}<;/选择>;)}导出默认应用程序

但当我选择console.log(myValue)并选择一个选项时,控制台上没有任何日志。拜托,我还能错过什么?


顺晟科技:

事件处理程序中

的setState在React中进行批处理。这意味着您不会立即看到更改。[你已经有了事件对象的值,所以你不需要状态值]

我已经修改了你的代码,你可以看到当我的事件处理程序中的控制台显示以前的值时,UseEffect控制台工作得很好。为了证明这一点,我向MyObject添加了另一个值。

myObject = {
  1: "objectValue"
}


function App() {
  const [myValue, setMyValue] = useState("")
  return ( <select className = "form-control"
    id = "valueToUse"
    onChange = {(event) => setMyValue(event.target.value)}
    value = {myValue}>{
      Object.keys(myObject).map((key) =>
        <option value = {key}> {myObject[key]} </option> 
      )
    }</select>
  )
}

export default App
  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航