Javascript React挂钩在盖茨比组件中不起作用

Javascript React挂钩在盖茨比组件中不起作用,javascript,reactjs,react-hooks,gatsby,Javascript,Reactjs,React Hooks,Gatsby,我试着做一个简单的菜单切换。而且它可以工作——但只适用于react类。 当我想使用功能组件时,初始状态是设置的(但不是在chrome react调试工具中),但是toggleExpanded函数根本不会改变状态 我甚至尝试了实际react网站上的一个基本示例: import React, { useState } from 'react'; function Example() { // Declare a new state variable, which we'll call "cou

我试着做一个简单的菜单切换。而且它可以工作——但只适用于react类。 当我想使用功能组件时,初始状态是设置的(但不是在chrome react调试工具中),但是toggleExpanded函数根本不会改变状态

我甚至尝试了实际react网站上的一个基本示例:

import React, { useState } from 'react';

function Example() {
  // Declare a new state variable, which we'll call "count"
  const [count, setCount] = useState(0);

  return (
    <div>
      <p>You clicked {count} times</p>
      <button onClick={() => setCount(count + 1)}>
        Click me
      </button>
    </div>
  );
}
import React,{useState}来自“React”;
函数示例(){
//声明一个新的状态变量,我们称之为“count”
const[count,setCount]=useState(0);
返回(
您单击了{count}次

设置计数(计数+1)}> 点击我 ); }
这也不起作用。但当我把它组织成一个班级时,一切都很好


这是什么?这是盖茨比组件的正常行为吗?

解决方案是-我必须升级所有软件包的版本

纱线升级


在那之后,挂钩起作用了;)

你试过使用箭头函数语法吗?也许它会很好用
const-Example=()=>
我现在就试过了-一样。根本不起作用。@Gawel1908不会有什么不同。Act版本是-16.8.1-react钩子应该能起作用-我想没有“盖茨比组件”这样的东西。从字面上说,这只是反应。