Как с помощью редукционной формы комбинировать значения для начальных значений?

В настоящее время я создаю компонент, позволяющий пользователю редактировать настройки своего профиля. Форма имеет такие поля, как:

first_name
last_name

В настоящее время редукционная форма правильно устанавливает начальные значения:

Profile = connect(
  state => ({
    initialValues: state.profiles.find(el => el.id === state.currentUser.user_id)
  })
)(Profile)

Проблема в том, что мне нужно также включить UserSettings в эту форму, поэтому я пытаюсь сделать это:

    Profile = connect(
      state => ({
        initialValues: state.profiles.find(el => el.id === state.currentUser.user_id),
        initialValues: {
          notification_email_product_feature_updates: state.user_settings.notification_email_product_feature_updates
}
      })
    )(Profile)

но вышеуказанное не работает... Как я могу добавить дополнительные начальные значения, которые находятся в другом объекте состояния?

Я также пробовал следующее, но это не устанавливает значение:

Profile = connect(
  state => ({
    initialValues: {
      first_name: state.profiles.find(el => el.id === state.currentUser.user_id) ? state.profiles.find(el => el.id === state.currentUser.user_id).first_name : '',
    }
  })
)(Profile)

person AnApprentice    schedule 12.08.2017    source источник


Ответы (1)


Попробуйте код ниже, но вы должны убедиться, что у вас есть что-то в этом state.user_settings.notification_email_product_feature_updates:

    Profile = connect(
    state => ({
        initialValues: 
        {
            currentUser: state.profiles.find(el => el.id === state.currentUser.user_id),
            settings: state.user_settings.notification_email_product_feature_updates
        }
    })
    )(Profile)
person Jacky Choo    schedule 13.08.2017