将 属性 附加到反应路线中的组件。我怎么能这样做?

Attaching a property to a component in react-route. How could I do this?

我正在使用 aws-amplify-react 设置身份验证过程。在我的一个文件中,我导出了一个从 withAuthenticator 返回的组件,如下所示(稍后在主渲染页面中使用):

import { ConfirmSignIn,ConfirmSignUp, ForgotPassword, SignIn, VerifyContact, withAuthenticator } from 'aws-amplify-react';
import Jobs from './job_page';

export default withAuthenticator(Jobs, false, [
    <SignIn/>,
    <ConfirmSignIn/>,
    <VerifyContact/>,
    <ConfirmSignUp/>,
    <ForgotPassword/>
  ]);

documentation 正如我在上面链接的那样,将名为 federated 的 属性 附加到从调用 withAuthenticator 返回的组件中,如下所示:

const AppWithAuth = withAuthenticator(App);
ReactDOM.render(<AppWithAuth federated={federated}/>, document.getElementById('root'));

但是如下图所示,我在 render 方法中使用了 Route。因此,我找不到将 federated={federated} 属性 与第一步 withAuthenticator 返回的组件附加在一起的方法。

ReactDom.render(
    <Provider store={createStoreWithMiddleware(reducers)}>
        <BrowserRouter>
            <div>
                <Switch>
                    <Route path="/jobs" component={App.Jobs} />
                    <Route path="/editor" component={App.VideoEditor} />
                    <Route path="/" component={App.Login} />
                </Switch>
            </div>
        </BrowserRouter>
    </Provider>
    , document.querySelector('.container'));

如何将 属性 附加到 Route 中的组件?我想将 属性 federated 附加到组件 App.Login.

您可以执行以下操作:

<Route path="/" render={() => <App.Login federated={federated} />} />