如何在 React 中正确绑定 onClick 事件以避免类型错误

React 中 onClick 期望接收一个函数,若传入字符串或直接执行表达式(如 window.href='...')会导致"Expected onclick listener to be a function"报错;正确做法是使用箭头函数包裹逻辑。 react 中 `onclick` 期望接收一个函数,若传入字符串或直接执行表达式(如 `window.href='...'`)会导致"expected `onclick` listener to be a function"报错;正确做法是使用箭头函数包裹逻辑。在 React 中,事件处理器(如 onClick)必须是函数类型------这是 JSX 渲染机制的强制要求。当你这样写:<button onClick={window.href='https://github.com/'} className="btn btn-github"> Visit GitHub</button>React 实际上会在组件渲染时立即执行 window.href='https://github.com/'(注意:此处应为 window.location.href,window.href 并不存在),并将赋值结果(即字符串 'https://github.com/')作为 onClick 的值传入。这违反了 React 的事件处理规范,因此抛出错误:Expected onclick listener to be a function, instead got a value of string type.? 正确写法是将事件逻辑封装为一个函数,并通过箭头函数(或具名函数)传递给 onClick: Cleanup.pictures 智能移除图片中的物体、文本、污迹、人物或任何不想要的东西

相关推荐
Ivanqhz20 分钟前
正余弦位置编码(Sinusoidal Positional Encoding)
java·linux·数据库
Ivanqhz31 分钟前
层归一化、残差、前馈网络与激活函数简述
服务器·数据库·人工智能·深度学习·算法
BD_Marathon33 分钟前
消息对象中字段的说明
java·前端·python
Java后端的Ai之路39 分钟前
Python进阶探索23 - Python中的Time与Datetime模块
开发语言·数据库·python·datetime·time
Java后端的Ai之路1 小时前
Python进阶探索24_应用案例_linux系统的监控
linux·开发语言·python·应用·探索
happylifetree2 小时前
Python22-26:核心语法-流程控制语句-if条件判断
python
程序员清风2 小时前
PydanticAI 实战:用类型安全构建可靠的 Python Agent
开发语言·python·安全
梦想画家2 小时前
SQLMesh Python 模型入门(三):前后置语句、蓝图建模与避坑指南
大数据·python·sqlmesh
通信瓦工2 小时前
利用浊度和电导率测量确定乙二醇基流体的质量
网络·数据库·ai
可乐ea3 小时前
GitHub Security Lab 开源 Fuzzing Taskflow:让 LLM 智能体自己跑完 C/C++ 模糊测试
jvm·c++·github·模糊测试·mcp·代码agent·智能体自动化