Url React/Meteor/Flowrouter:传递数据

Url React/Meteor/Flowrouter:传递数据,url,reactjs,flow-router,Url,Reactjs,Flow Router,我一直在试图找到一种方法,将通过flowrouters路由参数提供的数据与reactjs一起使用 我试图实现的是,当用户创建具有特定属性的场并将该数据插入mongo集合时,我可以在另一个视图中更新这些值。因此,我需要以某种方式获得用户id,例如,传递到这个更新视图中 目前我有以下代码: FlowRouter.route("/serviceplan/general/basic/:postId",{ name: "BasicInformation", action(params){ ren

我一直在试图找到一种方法,将通过flowrouters路由参数提供的数据与reactjs一起使用

我试图实现的是,当用户创建具有特定属性的场并将该数据插入mongo集合时,我可以在另一个视图中更新这些值。因此,我需要以某种方式获得用户id,例如,传递到这个更新视图中

目前我有以下代码:

FlowRouter.route("/serviceplan/general/basic/:postId",{

name: "BasicInformation",
action(params){
    renderTestLayout(<BasicInfo params={params}/>);
}});
FlowRouter.route(“/serviceplan/general/basic/:posted”{
名称:“基本信息”,
行动(参数){
renderTestLayout();
}});
查看代码:

BasicInfo = React.createClass({

 propTypes: {

     params: React.PropTypes.object.isRequired,
 },

mixins: [ReactMeteorData],

getMeteorData(){
    return{
        owner: Farms.findOne({farmname: this.props.params.postId})

    }
},

updateFarm(){
    console.log("updated!");
},

render(){

    console.log(this.data.owner);
    console.log(this.data.owner.address);

    return( 
        <div>

            <div className="col-sm-4">
            <h1>Basic information</h1>
            <form onSubmit={this.updateFarm}>
                <label>Name:</label>
                    <input type="text" ref="fname" className="form-control" defaultValue=""/><br></br>

                <label>Address:</label>
                <input type="text" ref="address" className="form-control" defaultValue=""/><br></br>

                <label>Postalcode:</label>
                <input type="text" ref="postalcode" className="form-control" defaultValue=""/><br></br>

                <label>Area:</label>
                <input type="text" ref="municipality" className="form-control"defaultValue=""/><br></br>

                <input type="submit" value="Update" className="btn btn-default" onClick={this.updateFarm}/>
            </form>
            </div>
        </div>
    );
}
BasicInfo=React.createClass({
道具类型:{
参数:React.PropTypes.object.isRequired,
},
mixins:[数据],
getMeteorData(){
返回{
所有者:Farms.findOne({farmname:this.props.params.postId})
}
},
updateFarm(){
日志(“更新!”);
},
render(){
console.log(this.data.owner);
console.log(this.data.owner.address);
报税表(
基本信息
姓名:


地址:

后代码:

面积:

); }
这里的问题是,当我被重定向到此BasicInfo组件视图时,数据可以与道具一起正常工作。但是当我尝试提交更改时,页面会重新加载,应用程序会崩溃。这可能是因为道具值为null,因为没有给此组件


什么样的解决方案可以让我在每次刷新时都能从url中获取postId值?

我找到了应用程序崩溃的原因,并找到了解决方案

我试图访问不存在的数据

if(this.data.owner){

        farmname = this.data.owner.farmname;
        address = this.data.owner.address;
        postalcode = this.data.owner.postalcode;
        municipality = this.data.owner.municipality;
        region = this.data.owner.municipality;
工作解决方案是在访问mongo数据对象之前检查它是否为null