1

我正在处理一些代码,但我遇到了这个错误。我以前在我的其他项目中没有看到它出现过,所以我不确定它为什么会出现在这里。我正在使用 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;

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

4

1 回答 1

6

setTitleId=(32);导致您的意思是错误setTitleId(32);

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

于 2019-09-05T17:44:59.777 回答