我有一个使用的登录表单设置和一个特定值props.values.userType
,我需要通过props向下传递到我的index.js
文件,在那里我呈现我的所有路由。
因此,在我的组件中,我有一个<RadioButtonGroup>
,它呈现3种类型的可用用户
<RadioButtonGroup
id="userType"
label="User Type"
value={values.userType}
error={errors.userType}
touched={touched.userType}
onBlur={handleBlur}
>
从这里开始,userType
作为props.values.userType
存在于formik
中
我想将这个prop值传递给我的index.js
文件,该文件呈现我所有的路由。
下面的index.js
const Routes = () => (
<Router>
<Switch>
<Route exact path="/" component={Home} />
<Route path="/login" component={FormikLoginForm} />
<PrivateRoute exact path="/admin" component={AdminPage} />
<Route path="/admin/change-password" component={ChangePassword} />
</Switch>
</Router>
);
我如何才能做到这一点?
发布于 2019-07-12 03:10:41
可以使用render
道具将道具传递到要在该路线上渲染的组件中,而不是将component
用作每个<Route />
的道具。
例如,在您的示例中,如果组件名为Login
<Route
path='/login'
render={(props) => <Login {...props} userType={props.values.userType} />}
/>
或者类似的东西,这取决于您的用例。
https://stackoverflow.com/questions/56995735
复制相似问题