2017-10-11 3 views
0

FormSection에 변경 작업을 보내고 싶습니다. ReduxForm : FormSection의 폼에 'change'액션을 디스패치합니다.

은 현재 내가 myForm.jsx이 일을 해요 :

<FormSection name="content"> 
    <MyFormSection sectionName="content" formName="PanelForm"/> 
</FormSection> 

MyFormSection.jsx이 다음

import { change } from 'redux-form'; 

// my component... 

const mapDispatchToProps = (dispatch, props) => ({ 
    change: (name, value) => dispatch(change(props.formName, props.sectionName+"."+name, value)), 
}) 

I 양식 모두의 이름을 통과하고 싶지 않아요 양식과 섹션.

아무에게도이 작업을 수행하는 더 좋은 방법이 있습니까? 만약 돌아 오는 형 입력 컴포넌트 내에있는 경우 단지 함수를 생성하고자하는 경우

답변

-1

this.props.input.onChange(value)

을 사용할 수 있지만, 그 변경을 실행할 때하는 돌아 오는 형태에 사용되지 않는 형태의 값 Field Component, 나는 당신이 올바른 방법으로 그렇게하고 있다고 생각한다. 내가보기에 볼 수있는 또 다른 예가 여기 있습니다. 이 함수는 '마법사'형식으로 값을 변경하는 매우 구체적인 방법 중 하나 인 소품을 통해 하위 폼에 전달되었습니다.

const mapDispatchToProps = (dispatch) => { 
    return { 
    changeFormAction: (fieldName, value): void => { 
     dispatch({ 
     type: '@@redux-form/CHANGE', 
     meta: { 
      form: 'wizard', 
      field: `styles.[${fieldName}]`, 
      touch: false, 
      persistentSubmitErrors: false 
     }, 
     payload: value 
     }) 
    } 
    } 
} 
관련 문제