反应钩子useEffect抛出赋值给const变量错误

Pau*_*son 0 reactjs react-hooks use-effect

我正在处理一些代码,但遇到了这个错误。我之前没有在其他项目中看到它出现过,所以我不确定它为什么会出现在这里。我正在使用 useEffect 钩子,我想在用户从下拉列表中选择一个选项时更新它。发生的情况是,当用户选择一个选项时,我收到以下错误TypeError: Assignment to constant variable.。我知道这是说我正在尝试更新一个不可能发生的常量,但我不明白为什么。不幸的是,

我无法确定如何正确呈现我的代码,但接下来的两行是我遇到问题的代码行。然后是我正在处理的完整代码。

const [TitleId, setTitleId] = useState(0); const TitleSelect = event =>{ console.log(event.target.value); setTitleId=(32); };

import React, {useState,useEffect} from 'react';
// import '../app.css';

const Header = props=> {
const [TitleList, setTitleList] = useState([]);
const [TitleId, setTitleId] = useState(0);

useEffect(()=>{
    console.log('first start');
    setTitleList(
        props.data.map((title,index)=>({
            title: title.title,
            id: index
        }))
    )
},[])
const TitleSelect = event =>{
    console.log(event.target.value);
    setTitleId=(32);
};

let content = (
    <select
    onChange={TitleSelect}>
    {TitleList.map(title=>(
        <option key={title.id} value={title.id}>
                {title.title}
                </option>
    ))}

    </select>)  
return(content);
}
export default Header;
Run Code Online (Sandbox Code Playgroud)

非常感谢任何建议或建议。

Rik*_*kin 5

setTitleId=(32);导致错误,setTitleId(32);而不是你的意思。

通过这样做,setTitleId=(32)您试图为 const 声明分配一个值,该声明保存对返回的函数指针的引用,useState因此您得到了Assignment to const variable错误