Я получаю детали из java API. Я хочу установить некоторые детали для commonvo на стороне пользовательского интерфейса и отправить объект commonvo на сторону сервера.Я использую приведенный ниже код:
Реагирующий компонент
import { getDetails, populateobjDetails } from './CommonAction'
function mapDispatchToProps(dispatch) {
return {
getDetails: (formType, commonVO) => dispatch(getDetails(formType, commonVO)),
populateobjDetails: (obj, commonVO) => dispatch(populateobjDetails(obj, commonVO)) //edit 1
}
}
Redux Action:
export function getDetails(requestFormType, commonVO) {
return (dispatch) => {
axios.get(`${ROOT_URL}/byName/${commonVO.name}`, { headers: { 'Cache-Control': 'no-cache,no-store,must-revalidate,max-age=-1,private', 'Pragma':'no-cache' } }).then(
(response) => {
let obj= dispatch(setDetails(response.data[0]));
dispatch(populateobjDetails(obj, commonVO))
dispatch(setobjSearchLoadingFlag(false))
}
)
}
}
export function populateobjDetails(obj, commonVO) {
const objDetails = {
projectAlias: obj.projectAlias,
dateExpenseClose: obj.dateExpenseClosed,
projectID: obj.projectId,
id: obj.id,
idClass: obj.idClass
}
return {
type: POPULATE_OBJ_DETAILS,
payload: { ...commonVO, ...objDetails }
}
}
Я добавляю objDetails в commonVO. Но во время «Отправка формы» дляЭти данные были установлены, я не могу видеть новые свойства, устанавливаемые в commonVO.
Я новичок в React-Redux и не очень знаком с ним. Пожалуйста, дайте мне знать, если мне нужно сделатьчто-то еще на стороне Redux-реакции?
Спасибо
Редактировать : я добавил метод 'populateobjDetails' в функцию 'mapDispatchToProps' (отсутствующий в коде) и импортировалметод в компоненте