问题描述
我正在使用 formik,我有一个输入,可以从自动完成和 formik 内部的组件中进行编辑。
它是这样的:
<Formik
initialValues={endUserLocationEdit}
onSubmit={saveEndUserLocation}
>
{props => {
const {
values,touched,errors,status,isSubmitting,validateParcelContainer,setFieldValue,handleChange,handleSubmit,handleBlur
} = props;
return (<form className="form" onSubmit={handleSubmit}>
<Autocomplete
fullWidth
id="rulLocationFk"
name="rulLocationFk"
value={values.rulLocationFk}
onChange={(event,newValue) => setFieldValue("rulLocationFk",newValue)}
onInputChange={(event,newInputValue) => {
searchLocation(values.locStatePk,newInputValue);
}}
getoptionSelected={(option,value) => value != null ? option.locName === value.locName : null}
getoptionLabel={(option) => option.locName}
options={locationList}
error={errors.locStatePk && touched.locStatePk}
renderInput={(params) => <TextField {...params} label="Location" variant="outlined" />}
/>
<MapCaller > </MapCaller>
正如您在自动完成中看到的,我使用 setFieldValue 来编辑 value={values.rulLocationFk}
好吧,现在在 formik 里面我还有一个组件可以编辑 values.rulLocationFk 的值
我这样调用 formik 中的组件:
<MapCaller > </MapCaller>
如何将参数 values.rulLocationFk 传递给 MapCaller,并在 MapCaller 内部对其进行编辑?
我认为:
<MapCaller location={values.rulLocationFk} setLocation={setFieldValue} > </MapCaller>
但这不起作用
谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)