javascript - 无法让 React onClick 触发
问题描述
我试图教自己做出反应。我似乎在让事件触发方面遇到问题。在这一点上,我要做的就是使用 useState 钩子来获取和设置一个按钮。该按钮最初以正确的值 100 呈现。当我单击该按钮时,我希望该按钮更新为 999。在此先感谢您的时间!
下面是一个名为 UserInterface.js 的文件
import React, { useState } from "react";
import InputElement from "./InputElement";
const useAppState = () => {
const [numberOfButtonClicks, setnumberOfButtonClicks] = useState(100);
const setAppState = () => {
setnumberOfButtonClicks(999);
};
return { numberOfButtonClicks, setAppState };
};
const UserInterface = () => {
const { numberOfButtonClicks, setAppState } = useAppState();
return (
<InputElement onClick={setAppState} numClicks={numberOfButtonClicks} />
);
};
export default UserInterface;
下面是一个名为 InputElement.js 的文件
import React from "react";
const InputElement = (props) => (
<button onClick={() => props.onClick()}>{props.numClicks}</button>
);
export default InputElement;import React from "react";
解决方案
尝试更改<InputElement onClick={setAppState} ... />
为<InputElement onClick={() => setAppState(999)} ... />
和按钮应该是<button onClick={props.onClick}>{props.numClicks}</button>
推荐阅读
- javascript - 从内存中删除图像对象
- angular - 如何使用打字稿和角度在动态下拉列表中创建“子菜单”?
- sql - SQL SERVER - 触发器限制超过 3 条记录
- xamarin.forms - Xamarin Google Places 位置
- notepad++ - 热门删除/替换标签但保留内容?
- visual-studio - 有没有办法在 Visual Studio 中评论选定的行而不是选定的文本范围?
- flutter - dart 中的 DateFormat 错误:“尝试从 17-04-2020 的位置 10 读取 -YYYY”
- reactjs - 页面刷新时音频不再播放 - React
- javascript - 如何动态编写reducer(useReducer hook)?
- python - 将不同大小的 2D 数组列表转换为 3D 数组