tutorial español object redux operator-keyword ngrx spread

object - español - ¿Puedo usar el operador de objeto expandido en angular+ngrx?



ngrx store tutorial (1)

Estuve leyendo desde aquí sobre el operador de propagación de objetos y estoy tratando de usarlo en mi proyecto, mi configuración es la siguiente:

  • angular 2
  • angular / cli 1.0.0-rc.0
  • ngrx / core 1.2.0
  • ngrx / store 2.2.1
  • rxjs 5.1.0
  • mecanografiado 2.0.10

En mi reducer.ts tengo

export interface State { [id: number]: string } export function reducer(state= {}, action: Action): State { case ''TEST'': return { ...state, 2: ''foo'' } }

Pero obtuve el siguiente error de compilación, estoy tratando de descubrir lo que está mal:

Property assignment expected Type ''{ 2: string; state: State; }'' is not assignable to type ''State'' Object literal may only specify known properties, and ''state'' does not exist in type ''State''

¿Algunas ideas? ¡Gracias!


No con la versión de TypeScript que está usando.

El soporte para la sintaxis de propagación de propiedades del objeto se introdujo en TypeScript 2.1 :

Objeto extendido y resto

TypeScript 2.1 brinda soporte para ES2017 Spread and Rest .

Similar a la dispersión de matriz, la difusión de un objeto puede ser útil para obtener una copia superficial:

let copy = { ...original };