小编Par*_*rth的帖子

onClick 事件在反应中第一次点击时不起作用

在这里,当我第一次按下搜索按钮时,“用户名”状态没有收到任何数据。“用户名”状态为空,App.js 中的 API 请求失败。我第二次单击同一按钮时,一切都按预期进行。我如何让它在第一次点击时起作用?这是怎么回事?

const Search = ({setInputText, setUsername, inputText, username}) => {

    const inputHandler = (e)=> {
        setInputText(e.target.value)
    }

    const searchHandler = (e)=> {
        e.preventDefault()
        setUsername(inputText)
    }

    return (
        <div>
            <form>
                <input value={inputText} onChange={inputHandler} type="text"/>
                <button onClick={searchHandler}>Search</button>
            </form>
        </div>
    )
}
Run Code Online (Sandbox Code Playgroud)

编辑:在此处添加 App.js

function App() {

  //States
  const [inputText, setInputText] = useState("")
  const [username, setUsername] = useState("")
  const [stats, setStats] = useState([])

  return (
    <div className="App">
        <h1>Game Stats</h1>
        <Search setInputText={setInputText} setUsername={setUsername} inputText={inputText} username={username} setStats={setStats}/>
        <Stats stats={stats}/>
    </div>
  );
}
Run Code Online (Sandbox Code Playgroud)

reactjs

6
推荐指数
1
解决办法
1万
查看次数

npm 相关任务在安装过程中抛出错误

我最近遇到了这个问题,除了npm start.

npm install给出了这个错误:

$ npm install @material-ui/core
npm ERR! Object for dependency "@babel/generator" is empty.
npm ERR! Something went wrong. Regenerate the package-lock.json with "npm install".
npm ERR! If using a shrinkwrap, regenerate with "npm shrinkwrap".
npm ERR! A complete log of this run can be found in:
npm ERR!   C:\Users\Parth\AppData\Roaming\npm-cache\_logs\2020-08-20T13_52_13_701Z-debug.log
Run Code Online (Sandbox Code Playgroud)

npx create-react-app ./给出了这个错误:

npx create-react-app ./
npx: installed 98 in 10.023s

Creating a new React app in G:\hel.

Installing packages. This might take a …
Run Code Online (Sandbox Code Playgroud)

javascript webdev.webserver node.js npm reactjs

0
推荐指数
1
解决办法
9384
查看次数

标签 统计

reactjs ×2

javascript ×1

node.js ×1

npm ×1

webdev.webserver ×1