如何在反应输入中设置状态值?
how to set the state values in react input?
你能帮我如何在输入字段中显示状态值并且输入字段是可编辑的。我正在尝试很多技巧但没有帮助也无法在 Whosebug 中找到................................................ ....
我想在输入字段中显示品牌代码状态 属性“品牌代码”值................................
这里是品牌代码 return 值
品牌代码:{
品牌代码:“尼克”,
品牌编号:1
}
state = {
brandcode: [],
};
Getbrandcode(brandId) {
getBrandCode(brandId)
.then(res => {
debugger;
//console.log(res);
this.setState({
brandcode: res.data.Data // i want show brandcode values in input
});
});
}
``
its a render.....
``
render() {
// const { formikProps} = this.props
return (
<Formik
enableReinitialize={true}
initialValues={this.masterstyledata}
onSubmit={(values, actions) => {
this.onSaveClick(values);
}}
validationSchema={this.validationSchema}
>
{formikProps => (
<>
<Card>
<CardBody>
{this.state.isLoading && <LoadingPanel />}
<Row>
<Col lg={12}>
<Form>
<FormGroup row>
<Label for="Value" sm={3}>Brand</Label>
<Col sm={3}>
<ComboBoxValue
data={this.state.branddesc}
style={{ width: '100%' }}
name="BrandID"
textField="text"
valueField="Value"
dataItemKey="Value"
onChange={(e) => {
this.BrandCodehandleChange(e);
formikProps.setFieldValue("BrandID", e.target.value)
}}
value={formikProps.values.BrandID}
placeholder="Brand Description"
/>
</Col>
</FormGroup>
<FormGroup row>
//here i want set values
<Label for="BrandCode" sm={3}>Style ID</Label>
<Col sm={3}> <Input sm={3}
type="text"
name="BrandCode"
id="BrandCode"
onChange={formikProps.handleChange('MasterStyleCode')}
value={formikProps.values.MasterStyleCode}
placeholder="Enter Style Id"
/>
<Error>{formikProps.errors.MasterStyleCode}</Error>
</Col>
</FormGroup>
</Form>
</Col>
</Row>
</CardBody>
</Card>
您在使用 handleOnChage
和 onChange
时犯了错误,这里:
onChange={formikProps.handleChange('MasterStyleCode')}
在渲染时将执行此函数,结果为 undefined
(如您所知,因为它是一个无效函数!),这不是您想要的在这里,要解决这个问题,你必须制作一个 HOF 并使用 setFieldValue
如果你的输入 name
与你想要更改它的 initialValue 键不同,例如:
onChange={(event) => {
formikProps.setFieldValue('MasterStyleCode', event.target.value)
}}
你能帮我如何在输入字段中显示状态值并且输入字段是可编辑的。我正在尝试很多技巧但没有帮助也无法在 Whosebug 中找到................................................ .... 我想在输入字段中显示品牌代码状态 属性“品牌代码”值................................
这里是品牌代码 return 值
品牌代码:{ 品牌代码:“尼克”, 品牌编号:1 }
state = {
brandcode: [],
};
Getbrandcode(brandId) {
getBrandCode(brandId)
.then(res => {
debugger;
//console.log(res);
this.setState({
brandcode: res.data.Data // i want show brandcode values in input
});
});
}
``
its a render.....
``
render() {
// const { formikProps} = this.props
return (
<Formik
enableReinitialize={true}
initialValues={this.masterstyledata}
onSubmit={(values, actions) => {
this.onSaveClick(values);
}}
validationSchema={this.validationSchema}
>
{formikProps => (
<>
<Card>
<CardBody>
{this.state.isLoading && <LoadingPanel />}
<Row>
<Col lg={12}>
<Form>
<FormGroup row>
<Label for="Value" sm={3}>Brand</Label>
<Col sm={3}>
<ComboBoxValue
data={this.state.branddesc}
style={{ width: '100%' }}
name="BrandID"
textField="text"
valueField="Value"
dataItemKey="Value"
onChange={(e) => {
this.BrandCodehandleChange(e);
formikProps.setFieldValue("BrandID", e.target.value)
}}
value={formikProps.values.BrandID}
placeholder="Brand Description"
/>
</Col>
</FormGroup>
<FormGroup row>
//here i want set values
<Label for="BrandCode" sm={3}>Style ID</Label>
<Col sm={3}> <Input sm={3}
type="text"
name="BrandCode"
id="BrandCode"
onChange={formikProps.handleChange('MasterStyleCode')}
value={formikProps.values.MasterStyleCode}
placeholder="Enter Style Id"
/>
<Error>{formikProps.errors.MasterStyleCode}</Error>
</Col>
</FormGroup>
</Form>
</Col>
</Row>
</CardBody>
</Card>
您在使用 handleOnChage
和 onChange
时犯了错误,这里:
onChange={formikProps.handleChange('MasterStyleCode')}
在渲染时将执行此函数,结果为 undefined
(如您所知,因为它是一个无效函数!),这不是您想要的在这里,要解决这个问题,你必须制作一个 HOF 并使用 setFieldValue
如果你的输入 name
与你想要更改它的 initialValue 键不同,例如:
onChange={(event) => {
formikProps.setFieldValue('MasterStyleCode', event.target.value)
}}