Javascript React Router Dom v5.2,无法从父组件接收的道具将道具传递给子组件

Javascript React Router Dom v5.2,无法从父组件接收的道具将道具传递给子组件,javascript,reactjs,react-router-dom,Javascript,Reactjs,React Router Dom,我在react v16.13.1项目中使用react路由器dom v5.2.0,我使用静态路由将道具从父组件传递到子组件,父组件从其父组件(即祖父)接收道具。从App.js->Applayout.js接收道具并发送至->APIData(最后路线) 类AppLayout扩展组件{ 建造师(道具){ 超级(道具); } render(){ log('Applayout'+''+this.props.data[1]); 返回( }/> ) } }``` 我也有同样的问题。我尝试了很多不同的方法,但都没

我在react v16.13.1项目中使用react路由器dom v5.2.0,我使用静态路由将道具从父组件传递到子组件,父组件从其父组件(即祖父)接收道具。从App.js->Applayout.js接收道具并发送至->APIData(最后路线)

类AppLayout扩展组件{
建造师(道具){
超级(道具);
}
render(){
log('Applayout'+''+this.props.data[1]);
返回(
}/>
)
}
}```

我也有同样的问题。我尝试了很多不同的方法,但都没有成功。在路径组件中,我试图传递的道具将是未定义的

我最近确实更新了我使用的babel版本。所以,这可能与使用旧的巴别塔版本有关

使用此结构对我来说很有用:

<Router>
  <Switch>
    <Route
      exact
      path="/admin/clients"
      render={() =>
        <ClientsRoute
          onSaveClient={this.handleSaveClient}
          onActivateExistingClient={this.handleActivateExistingClient}
        />
      }
    />
    <Route
      exact
      path="/admin/clients/:page(\d+)"
      render={() =>
        <ClientsPagedRoute
          onSaveClient={this.handleSaveClient}
          onActivateExistingClient={this.handleActivateExistingClient}
        />
      }
    />
  </Switch>
</Router>
现在我在package.json中有了这个:

{
“依赖性”:{
“@babel/core”:“^7.11.6”,
“@babel/plugin提案类属性”:“^7.10.4”,
“@babel/preset env”:“^7.11.5”,
“@babel/preset react”:“^7.10.4”,
“巴别塔加载器”:“^8.1.0”
},
“依赖项”:{
“核心js”:“^3.6.5”,
“再生器运行时”:“^0.13.7”
}
}
我以前在babelrc有过这样的经历:

{
“预设”:[“环境”、“反应”],
“插件”:[“转换类属性”,“转换对象rest扩展”]
}
现在我有了这个。babelrc:

{
“预设”:[“@babel/preset env”,“@babel/preset react”],
“插件”:[“@babel/plugin提案类属性”]
}

您是否在
Applayout
中看到控制台输出?@Siddharth否,我添加此项是为了查看数据是否进入Applayout,是否正常。在调试模式下,当我看到控件何时传递给APIData时,这些道具不保存任何数据。对我来说也是如此。使用react v16.13.1和react路由器v5.2.0。我无法使用路线的渲染方法传递任何自定义道具<代码>}/><代码>this.props.this未通过未定义@维克多·拉斯洛-你能弄明白吗?
<Router>
  <Switch>
    <Route
      exact
      path="/admin/clients"
      render={() =>
        <ClientsRoute
          onSaveClient={this.handleSaveClient}
          onActivateExistingClient={this.handleActivateExistingClient}
        />
      }
    />
    <Route
      exact
      path="/admin/clients/:page(\d+)"
      render={() =>
        <ClientsPagedRoute
          onSaveClient={this.handleSaveClient}
          onActivateExistingClient={this.handleActivateExistingClient}
        />
      }
    />
  </Switch>
</Router>