Javascript 哪种方式更适合将函数引用发送到react组件?
我正在尝试将函数引用发送到导入的组件。所以我最好使用ref属性或道具 我想找到一个最佳和标准的方法Javascript 哪种方式更适合将函数引用发送到react组件?,javascript,reactjs,reference,components,Javascript,Reactjs,Reference,Components,我正在尝试将函数引用发送到导入的组件。所以我最好使用ref属性或道具 我想找到一个最佳和标准的方法 如果像这样以字符串形式传递函数,则不会产生效果。showmodel 用大括号将其向下传递: <MyComponent show={this.showModal} hide={this.hideModal} /> Refs的目的是直接操作DOM,而不是将某些内容传递给组件。例如,您可能希望使用jQuery操作DOM 我理解你的问题,如果你有很多方法,你可以使用…道具,但你也可以通过道
如果像这样以字符串形式传递函数,则不会产生效果。showmodel 用大括号将其向下传递:
<MyComponent show={this.showModal} hide={this.hideModal} />
Refs的目的是直接操作DOM,而不是将某些内容传递给组件。例如,您可能希望使用jQuery操作DOM
我理解你的问题,如果你有很多方法,你可以使用…道具,但你也可以通过道具作为分离的方法
我想你指的是受控组件和非受控组件之间的区别:
失控-
控制-
答案取决于您的组件逻辑,如果您想通过使用REF的DOM或组件本身来控制它 我们不使用refs进行事件处理,最好使用带{}大括号的JSX sytax将处理程序作为道具传递给子组件。如果我正确理解您的问题,您想将eventhandler从父组件发送给子组件吗 parent.js child.js
好的,但是当我有很多方法的时候,情况如何呢?我应该使用ref?Mohammad,我已经写下了关于ref的更新。只要传递很多方法。@Mohammad你可以跟踪你的道具,哪些方法被作为道具传递。我们对DOM操作OK使用REF,但是我应该如何编写处理程序方法呢?我应该通过一门课吗?例如,我有很多功能:隐藏,显示,获取api数据,删除,更新等。你能提供清晰的工作流程隐藏,显示,获取api数据,删除,更新吗?举例说明可能会有所帮助
class ParentComponent extends Component {
handler = () => {
console.log("handler click">
}
render() {
return (
<div>
<Child handler={this.handler} />
</div>
);
}
}
const Child = ({ handler }) => (
<Button onClick={handler} />
)