在显示单个项目时,我有点坚持使用 Meteor、Flowrouter 和 React。一直在尝试几种解决方案,但不知道如何将 ID 传输到我的 React 类并且无法真正找到任何信息。非常感谢朝着正确的方向推动以帮助理解如何正确地做到这一点
我的路线看起来像这样
FlowRouter.route('/video/:_id', {
name: "video",
action(pathParams, queryParams) {
console.log("Got the postId from the URL:", pathParams._id);
console.log("Query parameters:", queryParams);
ReactLayout.render(App, {
content: <Play />
});
}
});
所以这可以帮助我获取 ID,然后在我的 Play React 类中我有这个代码
Play = React.createClass({
renderPlay() {
return Videos.findOne(FlowRouter.getParam("_id"));
},
render() {
return (
<div className="container">
{this.renderPlay()}
</div>
);
}
});
但我真正想做的是将信息传递给我的 React Clip 类,并将值放入变量中。
Clip = React.createClass({
getDefaultProps: function () {
return {
src : 'https://www.youtube.com/embed/',
width: 1600,
height: 900
}
},
propTypes: {
video: React.PropTypes.object.isRequired
},
render() {
return (
<iframe
src={this.props.src + this.props.video.videoId} frameBorder={ 0 }>
</iframe>
);
}
});
为此,我需要在我的 Play 课程中加入类似的内容。
renderVideo() {
// Get tasks from this.data.tasks
return this.data.videos.map((video) => {
return <Clip key={video._id} video={video} />;
});
},
很想了解如何正确地做到这一点,了解这个堆栈确实是朝着正确方向迈出的一大步。
欢迎使用涵盖 Meteor + React + kadira:Flowrouter + kadira:ReactLayout 的教程和指南来处理不仅仅是单页应用程序。