javascript - 在函数和类组件之间反应`onClick`变化
问题描述
在官方反应教程中,他们首先编写类组件:
class Square extends React.Component {
render() {
return (
<button className="square" onClick={() => this.props.onClick()}>
{this.props.value}
</button>
);
}
}
然后使其成为功能组件
function Square(props) {
return (
<button className="square" onClick={props.onClick}>
{props.value}
</button>
);
}
为什么onClick
需要改变?
谢谢
解决方案
在函数组件中,props 是通过参数props
直接访问的(注意它是如何传入的),因为它是一个对象。在类组件中,props
存在于类本身上,不存在名为 的变量props
。
推荐阅读
- python-3.x - 如何保存和恢复卷积自编码器神经网络模型
- vb.net - 每次我的 for next 循环结束迭代以获取面板图像时,我想在 printpreviewdialog 中添加一个页面
- sql - 带有子查询和多个 group by 语句的 DB2 查询
- tkinter - 如何正确地将绝对路径保存为树视图的值?
- python-3.x - remove a line from file which only contains new line
- regex - 正则表达式检查字符串是否为包含十进制数的数字
- sql - 如何从类别表中以分层形式输出所有类别和子类别?
- facebook - 不足的范围无法以管理员身份发布到页面
- java - 如何将 HashMap 列表与选定键进行比较
- c# - 在 Linux Docker 容器中运行时无法读取证书 - 适用于 Windows