javascript - React.js:从父组件传递到子组件的函数没有被调用
问题描述
我是初学者,正在尝试学习 React。我有一个父组件,其状态为布尔值,我使用在其类中定义的名为 rerender() 的函数进行更改。我将此函数传递给子组件的道具,如下所示:
<Todolist
color={color}
name={name}
items={items}
addListItem={this.addListItem}
rerender={() => this.rerender}
/>
我在该函数中有一个 console.log 来检查它是否被调用。我在子组件中这样称呼它:
this.props.rerender();
我确定this.props.rerender()
在子组件中调用的 onChange 事件正在触发,那么为什么没有调用它的一些可能原因是什么?
解决方案
这将不起作用,因此不会调用该函数,有 2 个选项:
rerender={() => this.rerender()}
或者
rerender={this.rerender}
后一个得到传递给它的任何参数,但第一个不会得到任何参数。
如果它未定义为箭头函数,bind
您可能需要。this.renderer
推荐阅读
- python - 带有 HTTP 错误 400 的 Python 脚本:错误请求
- python - 在 tkinter 中清理来自文本框的输入
- android - 底部导航活动模板中标题和片段之间的间隙
- java - 如何获得故事点估算 Jira 插件开发
- python - 具有多个值和缺失值的单个列表到熊猫数据框
- linux - 高级 CSV 阅读器在 linux 中解析字符串
- python-3.x - 重试代码并进行细微更改,直到它在 python 中工作
- php - 有没有办法在数据库中获取最后一个插入数据组?代码点火器
- excel - 如何使用 VISIO 中存在的 VBA 获取 excel 文件的第一列
- android - com.google.android.gms.common.api.internal.zza 的依赖关系解析错误