因此,我在理解传递给子组件的prop的函数调用方式的差异时遇到了一个问题。
onClick(id) {
console.log(id)
}
<div className="card" onClick={() => this.props.onClick(this.state.id)}>
v、 美国。
<div className="card" onClick={this.props.onClick(this.state.id)}>
第一个按预期工作,并在单击时给我组件状态的id。第二个在加载时打印每个组件的所有id,甚至在我有机会点击它们之前。我错过了什么?为什么返回语句如此重要?谢谢你的帮助。
匿名用户
需要传递一个函数。
您的第一个示例传递了一个调用此函数的函数。道具。onClick(this.state.id)当它运行并正常工作时。
第二个示例将onClick
的计算结果传递给this。道具。onClick(this.state.id)
这就是为什么组件加载时会立即打印所有id的原因。我猜调用此函数不会返回任何结果。道具。onClick(this.state.id)
soonClick
在单击div
时没有任何调用。
在
在#2处,您给出执行
的结果。道具。onClick(this.state.id)
无效。
你一定是打电话给点击
onClick={this.props.onClick(this.state.id)}
所以换成
onClick={() => this.props.onClick(this.state.id)}
这将阻止自动调用事件处理程序函数。通过上述更改,onClick事件处理程序函数仅在单击时调用
问题内容: 我想将功能传递给子组件,但出现此错误。 基本上是我想做的。 var ReactGridLayout = require(’react-grid-layout’); 似乎它是在React v16中引入的。因此,将函数从父代传递给子代的正确方法是什么? 问题答案: 我发现出了什么问题。这是因为react-grid-layout。我必须将其余的属性传递给孩子。
问题内容: 在React中,我有类似的文件 parent.js 包含文本框和按钮 child.js 包含P标签 App.js 包含父组件和子组件 问题 将“父级”上的“文本框”值传递给子级,并将其显示在子级标记中。 完整代码 堆叠 问题答案: 更新了示例以将数据传递给子组件。 https://stackblitz.com/edit/react- trmj9i?file=child.js 在下面添加
我完全不知道这里发生了什么,如果有任何帮助,我将不胜感激!
问题内容: 我正在寻找一个函数,该函数需要一个页面/类别的数组(来自平面数据库结果),并根据父ID生成一个嵌套的页面/类别的数组。我想递归地执行此操作,以便可以进行任何级别的嵌套。 例如:我在一个查询中获取所有页面,这就是数据库表的样子 这是我要最终在视图文件中处理的数组: 我已经看过并尝试过几乎遇到的所有解决方案(Stack Overflow上有很多解决方案,但是没有运气得到足够通用的东西同时适
问题内容: 这个问题已经在这里有了答案 : 如何将变量和数据从PHP传递到JavaScript? (20个答案) 5年前关闭。 我正在尝试将PHP数组变量转换为JavaScript变量。 这是我的代码: 我无法获得PHP数组的价值。 我该如何解决这个问题? 问题答案: 在下面的示例中,您具有一个PHP数组,然后首先通过一个PHP数组创建一个JavaScript数组:
问题内容: 通过回调函数将数据从子级传递到父级组件,但是不起作用。我在这里做错了什么?将数据从子级传递到父级组件-反应-通过回调函数 https://codepen.io/silentarrowz/pen/GEMQEP?editors=0010 这是代码 问题答案: 有几个问题。 1)你必须绑定 2)是异步的,因此不能保证在传递给时将其设置为所需的值。你可以做 要么 解决该问题。