如何在 react 中的方法之间进行通信
How to communicate between methods in react?
我目前SelectedTopicPage
组件中有两个方法,分别是navigateNext
和render
。我想将topicPageNo
的值从navigateNext
方法传递到render
方法。在 React 中推荐的方法是什么?当我尝试声明时:
topicPageNo = navigateNext.state.topicPageNo;
它给了undefined error
.
var SelectedTopicPage = React.createClass({
navigateNext: function() {
let topicPageNo = '2';
this.setState({topicPageNo : topicPageNo});
},
render: function() {
let topicsID = this.props.topicsID;
let navigateNext = this.navigateNext;
let topicPageNo = navigateNext.state.topicPageNo;
return (
<div>
{this.props.topicPages.filter(function(topicPage) {
return topicPage.topic_no === topicsID && topicPage.topic_page_no === topicPageNo; // if condition is true, item is not filtered out
}).map(function (topicPage) {
return (
<div>
<div>
<SelectedTopicPageMarkup headline={topicPage.headline} key={topicPage.topic_no}>
{topicPage.description}
</SelectedTopicPageMarkup>
</div>
<div>
<NextPrevBtn moveNext={navigateNext}/>
</div>
</div>
);
})}
</div>
);
}
});
你必须使用this
,所以你的代码应该let topicPageNo = this.state.topicPageNo;
并且您的组件应该具有类似
getInitialState:function()
{
return{
topicPageNo:0
}
}
相关文章:
- firefox插件和dev/panel之间的通信
- 如何在两个不同的iframe HTML之间进行通信
- Angularjs事件与发布/订阅指令之间的通信
- Firefox插件SDK:在侧边栏和主脚本之间通信对象
- Ember.js:接受的子组件和父组件之间通信的最佳实践
- 如何在Windows Phone 8.1应用程序中在C#和Javascript之间传递数据或通信
- 如何在Famo.us中的两个视图(不同的js文件)之间进行通信
- 在Jquery或Javascript中获取两个范围或日期之间的通信周数
- 如何在同源选项卡之间建立通信
- 如何在 PHP 和 JS 中的并发会话之间进行通信
- 如何在两个动画画布元素之间进行通信
- 在 HTML5 和 C# Web 套接字通信之间
- angularjs 中控制器和指令之间的通信
- 歌剧扩展脚本和它们之间的通信
- 如何使用js在两个aspx页面之间进行通信
- 多个应用程序之间的通信
- Socket.IO:如何在同一服务器中的Socket.on()事件之间通信/交换数据
- chrome扩展的浏览器操作、后台脚本和内容脚本之间通信的上下文和方法
- 使用PhoneGap/Cordova时应用程序和服务器之间通信的最佳实践
- 使用AJAX在两个JavaScript文件之间通信并发送数据