如何处理从ReactJS中的组件B中的方法调用组件a中的方法这样的情况
How to handle a case like calling a method in Component A from method in component B in ReactJS
我需要将课程标签表单Component #1
传递给Component #2
。我试图通过调用另一个组件中的方法来实现这一点。但它没能说出Reference Error occurred
。如何做到这一点?
组件#1:
var CourseCard = React.createClass({
showPapers: function(){
console.log("Clicked:" + this.props.each_course.label);
setCourseName(this.props.each_course.label);
var elem = React.createElement(Papers, {
course : this.props.each_course.label
});
},
render: function() {
return(
<Link to="/papers">
<div className="course_card" onClick={this.showPapers}>
<img className="course_img" src={this.props.each_course.image}/>
<h4>{this.props.each_course.label}</h4>
</div>
</Link>
);
}
});
组件#2:
const Papers = React.createClass({
setCourseName: function(course_name){
console.log("Called setCourseName with name" + course_name);
},
render () {
return (
<h1>List of all papers</h1>
)
}
})
您可以使用refs来调用另一个组件的方法。
组件#1
var CourseCard = React.createClass({
showPapers(){
console.log("Clicked:" + this.props.each_course.label);
this.refs.papers.setCourseName(this.props.each_course.label);
},
render() {
return(
<Link to="/papers">
<div className="course_card" onClick={this.showPapers}>
<img className="course_img" src={this.props.each_course.image}/>
<h4>{this.props.each_course.label}</h4>
</div>
</Link>
<Papers refs="papers"/>
);
}
});
组件#2
const Papers = React.createClass({
setCourseName(course_name){
console.log("Called setCourseName with name" + course_name);
},
render () {
return <h1>List of all papers</h1>;
}
})
但尽量避免使用props,而不是直接调用组件的方法。
相关文章:
- react组件中的绑定方法
- Angular2将组件方法导入到另一个组件中
- 从vuejs中的组件模板访问父方法
- 在React中将方法从一个组件移动到另一个组件,并且仍然可以在原始组件中使用
- 如何从Vue.js中的子组件访问父方法
- Redux-组件不同的方法(智能/哑点/容器/演示)
- 组件之后子元素中的某个方法DidMount in parrent 元素
- bind():您正在将一个组件方法绑定到该组件.React会自动为您执行此操作
- Emberjs-如何在组件方法中获取当前路由器路径
- EmberJS - 使用几个解决方案从外部调用组件方法(呼吁讨论)
- ReactJS以正确的方式绑定组件方法
- 如何从WebSocket回调访问React中的组件方法
- Angular 1.5组件方法templateUrl+函数
- React组件方法this.state.myState从child返回后未定义
- 在React中暴露组件方法
- finddomnode(组件)方法列表
- 用Sinon存根一个React组件方法
- 在ReactJs组件方法调用之间存储变量
- 我只能在使用Angular2 Universal的客户端中运行组件方法吗
- 在 constructor() 中绑定许多 React 组件方法的上下文的正确约定是什么?