将属性附加到react-route中的组件。我怎么能这样做?

问题描述 投票:0回答:1

我正在使用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

reactjs aws-amplify react-component
1个回答
1
投票

您可以执行以下操作:

<Route path="/" render={() => <App.Login federated={federated} />} />
© www.soinside.com 2019 - 2024. All rights reserved.