antd에서 setFieldsValue와 defaultVal의 사용법

코드는 다음과 같습니다.

componentWillMount() {
  this.props.form.setFieldsValue({
phone: this.props.maintain.account.phone,
    email: this.props.maintain.account.email
  });
  console.log(this.props.form.setFieldsValue);
}
인쇄해 내다

function setFieldsValue(fieldsValue) {
      var newFields = {};
      var fieldsMeta = this.fieldsMeta,
        fields = this.fields;  
      var virtualPaths = (0, _utils.getVirtualPat…      
undefined
더 신기한 것은 이 코드가 원래 잘 작동하는데 아무런 문제가 없는데 동료의 컴퓨터에서 위와 같은 문제가 발생한다는 것이다. 내 컴퓨터에도 이 문제가 생겼지만 코드는 고친 적이 없다
나중에 이렇게 코드의 기본값을 설정하면 나타난다
반드시

<FormItem
{...formItemLayout}
label=" "
>
{getFieldDecorator('phone', {
rules: [{
required: false, message: ' !'
}]
})(
<div>
<Input className="content_style" addonBefore={<Icon type="mobile" />} defaultValue={maintain.account.phone} />
</div>
)}
</FormItem>
보충 지식:antd4에서 Form 구성 요소 initialValues 설정의 초기 값이 잘못되었습니다. setFieldsValue 동적 부여, getFieldsValus 동적 가져오기 값을 사용합니다.
우선 initial Values라는 속성을 설명합니다. 이 속성antd는 공식적으로 Form 구성 요소의 초기 값을 설정합니다. 그러나 만약에 값이 백엔드에서 요청되면 initial Values가 설정되지 않을 수 있습니다. 익명 구성 요소를 사용한다면 From 구성 요소를 수정하면 일련의 문제가 발생할 수 있습니다.
다음은 setFieldsValue와 getFieldsValus 속성을 사용했습니다.
antd 홈페이지에서form 구성 요소는this를 사용할 수 없음을 설명합니다.setState 수정 값,
setFieldsValue에서만 설정할 수 있습니다.
getFieldsValus를 통해 가져오기
우선 getFieldsValus를 통해 동적으로 값을 가져옵니다.

export default class List extends Component {
  // 
  formRef = React.createRef();
 }
두 번째 단계
ref 사용

<Form
   {...layout}
   name="basic"
   //   formRef 
   ref={this.formRef}
   
   //initialValues  
   initialValues={this.state.formInitValues}
   //validateMessages  
   validateMessages={this.validateMessages}
   //form submit 
   onFinish={onFinish}
   //form submit 
   onFinishFailed={onFinishFailed}
 >
</Form>
setFieldsValue 사용
참고: sell_링크맨은 Form에서 item의 필드 이름입니다. 그 필드에 값을 부여해야 합니다. 이것으로 ok를 사용하면 이벤트에 쓸 수 있습니다.

 this.formRef.current.setFieldsValue({
   sell_linkman: value,
 })
getFieldsValue 사용
‘sell_linkman'은 form의 item 필드 이름입니다.
this.formRef.current.getFieldsValue('sell_linkman')
상기 antd에서 setFields Value와 default Val의 용법은 바로 편집자가 여러분에게 공유한 모든 내용입니다. 참고 부탁드리고 저희도 많이 사랑해 주세요.

좋은 웹페이지 즐겨찾기