在rxjs5 Store中存储和实例而不是数组

时间:2016-12-13 02:54:35

标签: angular angular2-forms rxjs5 reducers

我在减速机上有以下尝试

import { ActionReducer, Action, Store } from '@ngrx/store';
import { Observable } from 'rxjs'
import { Name } from './name.model'

export const ADD_NAME = 'ADD_NAME';

export const name: ActionReducer<any> = ( state = new Name(), action: Action ) => {
  switch ( action.type ) {
    case ADD_NAME:
      return [ state, action.payload ];

    default:
      return state;
  }
};

我想在商店中存储一个Name实例。目前,ADD_NAME会返回一个数组。如何只存储单个实例而不是数组

1 个答案:

答案 0 :(得分:0)

您可以使用typescript 2.1 +编写此代码:

case ADD_NAME:
  return { ...state, action.payload };

case ADD_NAME:
  return Object.assign({}, state, action.payload);