Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在ReactJS中具有动态URL的路由中传递变量?_Javascript_Reactjs_React Router - Fatal编程技术网

Javascript 如何在ReactJS中具有动态URL的路由中传递变量?

Javascript 如何在ReactJS中具有动态URL的路由中传递变量?,javascript,reactjs,react-router,Javascript,Reactjs,React Router,我一直试图通过将一个变量值从主组件App.js传递给子组件Attendes.js来解决这个问题。路线如下 App.js 我无法检索作为道具传递的adminUser。adminUser正在变得未定义。但我可以做变量meetingID,URL中编码的用户ID。 如何在子组件中获取adminUser值。您可以呈现匿名组件并插入adminUser道具。别忘了代理路线道具 <Router> ... <Route path="/attendees/:userID/:meet

我一直试图通过将一个变量值从主组件App.js传递给子组件Attendes.js来解决这个问题。路线如下

App.js 我无法检索作为道具传递的adminUser。adminUser正在变得未定义。但我可以做变量meetingID,URL中编码的用户ID。
如何在子组件中获取adminUser值。

您可以呈现匿名组件并插入adminUser道具。别忘了代理路线道具

<Router>
  ...
  <Route
    path="/attendees/:userID/:meetingID"
    component={routeProps => (
      <Attendees {...routeProps} adminUser={this.state.userId} />
    )} 
  />
</Router>

谢谢它起作用了。我已经试过了,但我用道具代替了routeProps。工作不顺利。现在我在控制台中遇到另一个错误。它表示警告:无法对未安装的组件执行React状态更新。这是一个no-op,但它表示应用程序中存在内存泄漏。要修复此问题,请取消componentWillUnmount方法中的所有订阅和异步任务。在由上下文创建的组件中的App.js:110的与会者中。Consumer@VikrantAgrahari你可以给它起任何名字,但是路线道具是从路线传递的东西,所以它清楚地表明了它是什么。@VikrantAgrahari不同的问题,请提出一个新问题。请随意链接到这里。
componentDidMount(){
    const meetingID = this.props.match.params.meetingID
    const adminUser = this.props.adminUser
}
<Router>
  ...
  <Route
    path="/attendees/:userID/:meetingID"
    component={routeProps => (
      <Attendees {...routeProps} adminUser={this.state.userId} />
    )} 
  />
</Router>