инициализация значения селектора в избыточной форме первым выбором в селекторе - PullRequest
0 голосов
/ 26 февраля 2020

В своем проекте я использую избыточную форму и пока не знаком с избыточной формой. это мое состояние:

    {
       labels:{
         "Gold":["coin","others"],
         "Currency":["Dollar","Euro"],
       }
    }

тогда в форме добавления у меня есть два селектора. один для основных категорий (золото, валюта, ...) и другой для подкатегорий (доллар, евро, ...), поэтому мне нужно определить селектор подкатегорий на основе моего первого селектора категории. Это мой selectInputRender компонент:

const SelectInputRender = props => {
    const {name,inventoryLabels,formValues} = props
    let optionList = []
    if(name==="mainSource"){
        optionList = Object.keys(inventoryLabels)
    }else if(name==="subSource"){
        console.log(formValues)
    }
    const options = optionList.map(option=><option>{option}</option>)
    return <Field component="select" name="mainSourceSelector">{options}</Field>;
};

const mapStateToProps = state => {
    return {formValues:state.form.addInventoryForm,inventoryLabels:state.inventoryLabels}
}

В компоненте формы я указываю селектор с помощью name prop. моя проблема в том, когда я впервые монтирую свою форму. как видите, я получаю свой первый выбор категории из values в форме состояния. но до изменения значения первого селектора values нет, поэтому я не могу правильно отобразить второй селектор.

Я знаю, что могу решить эту проблему путем изменения состояния или других решений, но я хочу знать, есть ли какие-либо способ получить значение первого селектора из избыточной формы без его изменения ??

...