Object.assign ({}, a) возвращает экземпляр «a» в редуксе - PullRequest
0 голосов
/ 13 октября 2019

Я использую Redux в качестве хранилища данных. Всякий раз, когда я читаю состояние приложения, я создаю копию состояния, используя object.assign.

 const state: CustomerState = this.store.getState();
 this.rideSearchRequest = Object.assign({}, state.rideSearchRequest);

Проблема заключается в том, что по какой-то причине изменение this.rideSearchRequest также изменяет объект запроса в состоянии.

Что я здесь не так делаю?

Мой объект состояния выглядит следующим образом

import { ActionCreator } from 'redux';
import { CreateAction } from './customer.action';
import { RideSearchRequest } from '../models';

export const create: ActionCreator<CreateAction> = (payload: RideSearchRequest) => ({
    type: 'CREATE',
    payload
});

export interface RideSearchRequest {
    pickupLocation: google.maps.GeocoderResult[] | google.maps.places.PlaceResult[];
    dropLocation: google.maps.GeocoderResult[] | google.maps.places.PlaceResult[];
    rideScheduleType: RideScheduleType;
    rideDate: string;
    rideTime: string;
    carType: CarType;
    bid: number;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...