Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 反应本机useState函数参数混乱_Javascript_Reactjs_React Native_Use State - Fatal编程技术网

Javascript 反应本机useState函数参数混乱

Javascript 反应本机useState函数参数混乱,javascript,reactjs,react-native,use-state,Javascript,Reactjs,React Native,Use State,我正在编写一个React本地教程。在下面的代码中,courseGoals是使用useState函数在状态中声明的,但是在调用addGoalHandler函数中的setCourseGoals函数时,currentGoals已作为参数传递,而不是courseGoals。为什么会这样?这是因为如果我们使用的是设置courseGoals中的函数,参数将始终自动获取courseGoals值吗 export default function App() { const [enteredGoal, set

我正在编写一个React本地教程。在下面的代码中,courseGoals是使用useState函数在状态中声明的,但是在调用addGoalHandler函数中的setCourseGoals函数时,currentGoals已作为参数传递,而不是courseGoals。为什么会这样?这是因为如果我们使用的是设置courseGoals中的函数,参数将始终自动获取courseGoals值吗

export default function App() {
  const [enteredGoal, setEnteredGoal] = useState('');
  const [courseGoals, setCourseGoals] = useState([]);

  const goalInputHandler = (enteredText) => {
    setEnteredGoal(enteredText);
  };

  const addGoalHandler = () => {
    setCourseGoals(currentGoals => [...currentGoals, enteredGoal]);
  };

代码中的
[…currentGoals,enteredGoal]
将在
课程目标
数组中添加新目标

可以根据需要重命名参数。而且它仍然有效。例如:

setCourseGoals(courceGoals => [...courceGoals, enteredGoal]);