流星流路由器和反应组件中的路径参数

时间:2016-05-19 07:02:33

标签: javascript meteor reactjs flow-router

如何在反应组件中获取路径的参数 我使用反应组合器包中的反应容器 如果这是整条路线

https://learnbuildrepeat-tevinthuku.c9users.io/ReadProjectMeta/wD98XTTtpf8ceyRJT

我如何才能获得

wD98XTTtpf8ceyRJT

并将其值存储在react组件内的变量中。 香港专业教育学院曾尝试使用

FlowRouter.getParam()但它不起作用。我一直未定义

import React from 'react';
export default class ReadProjectMetaLayout extends React.Component {
 render() {
 var category = FlowRouter.getQueryParam();
console.log(category);
return (
 <div>
 <h4>Hello World</h4>
 </div>
 )
 }
}

这是路线

FlowRouter.route("/ReadProjectMeta/:_id", {
name: 'project.meta',
action(params) {
mount(ReadProjectMetaLayoutContainer, {
components: (<ReadProjectMeta  _id={params._id}/>)
})
}
});

可能是什么问题,如何解决?

1 个答案:

答案 0 :(得分:3)

仅获取字符串的最后一部分:

location.pathname.substr((location.pathname.lastIndexOf('/')+1))

您可以尝试的另一种基于纯流星的事物来自this reference

FlowRouter.getParam(":_id");

注意:您的解决方案在获取查询参数时无效,查询参数是在&#39;?&

即。 /应用/这此结果我的应用内显示= YES&安培;颜色=红色

上面的代码颜色和show是查询参数,而apps是路径名的一部分