upsertResources

Add new or update existing resources in your state tree.

Arguments

  1. resources (Object): The current resources object from your state tree.

  2. newResources (Array|Object): The new resources to add or update.

  3. [mergeResources] (Boolean): Whether or not to merge individual resources with the existing resource in the store, or to replace it with the new data. Defaults to true.

Returns

(Object): The updated resources object.

Example

import { upsertResources } from 'redux-resource';
import actionTypes from './my-action-types';

export default function reducer(state, action) {
  switch (action.type) {
    case (actionTypes.CREATE_RESOURCES_CUSTOM): {
      const newResources = upsertResources({
        resources: state.resources,
        newResources: action.resources
      });

      return {
        ...state,
        resources: newResources
      };
    }
  }
}

Tips

  • This is used internally within the reducer returned by

    resourceReducer to add and update resources in the

    store. You will typically only need to use this function if you're authoring a

    plugin.

Last updated