Javascript 嗨,我是react.js的新手,我正在使用useState钩子,我有这个错误,有什么解决办法吗

Javascript 嗨,我是react.js的新手,我正在使用useState钩子,我有这个错误,有什么解决办法吗,javascript,reactjs,Javascript,Reactjs,在函数“app”中调用React Hook“useState”,该函数既不是React函数组件,也不是自定义React Hook函数React hooks/rules of hooks import React, {useState} from 'react'; import logo from './logo.svg' import Person from './Person/Person'; import './App.css'; const ap

在函数“app”中调用React Hook“useState”,该函数既不是React函数组件,也不是自定义React Hook函数React hooks/rules of hooks

    import React, {useState} from 'react';
    import logo from './logo.svg'
    import Person from './Person/Person';
    import './App.css';


    const app = props =>{
      const [Personstat, setPersonstate]= useState({
        persons : [
          {name:"Amir", age:"25"},
          {name:"Amir Yousaf", age:"22225"},
          {name:"Amir Yousaf Maher", age:"25"}
        ]
      });
     const switchNameHandler = () =>{
        //alert('hello Listener');
        setPersonstate( {
    persons : [
            {name:"Qasin", age:"23"},
            {name:"Qasin Yousaf", age:"22"},
            {name:"Qasin Yousaf Maher", age:"215"}
          ]
        })};
      return (
        <div className="App">
          <h1>Hello  I am trying to learn js </h1>
          <Person name={Personstat.persons[0].name} 
age={Personstat.persons[0].age}/>
          <Person name={Personstat.persons[1].name} 
age={Personstat.persons[1].age}>I am try my best for learning</Person>
          <Person name={Personstat.persons[2].name} 
age={Personstat.persons[1].age}/>
          <button onClick={switchNameHandler}>Switch Name</button>
        </div>
      );
    }
    export default app;
import React,{useState}来自“React”;
从“./logo.svg”导入徽标
从“./人/人”导入人;
导入“/App.css”;
const app=props=>{
const[Personstat,setPersonstate]=useState({
人员:[
{姓名:“阿米尔”,年龄:“25”},
{姓名:“阿米尔·优素福”,年龄:“22225”},
{姓名:“Amir Yousaf Maher”,年龄:“25”}
]
});
常量switchNameHandler=()=>{
//警报(“听众你好”);
setPersonstate({
人员:[
{姓名:“卡辛”,年龄:“23”},
{姓名:“Qasin Yousaf”,年龄:“22”},
{姓名:“Qasin Yousaf Maher”,年龄:“215”}
]
})};
返回(
你好,我正在学习js
我正在努力学习
交换机名称
);
}
导出默认应用程序;

反应组件名称必须以大写字母开头。将组件名称更改为App。

您如何在项目中使用
App
<代码>或
App()
?如Eddie所述;您应该执行以下操作:
const-App
导出默认App
,然后
导入App并使用
呈现它。您必须以大写字符启动组件。
App
是此文件模块范围内的局部变量。没有看到OP是如何导入它的,这个答案只是一个(误导性的)猜测。问题在于:导出默认应用程序,像这样导出组件将不起作用。不,默认导出的名称无关紧要。请您演示如何导入它,这将有助于
从“/app”导入WhateverNameYouWantWillWork如果是默认导出:
导出默认不相关的LocalVariableName