将 属性 附加到反应路线中的组件。我怎么能这样做?
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} />} />
我正在使用 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} />} />