angular ngrx-store ngrx-store-4.0

angular - ¿Cuál es la diferencia entre StoreModule.forRoot() y StoreModule.forFeature()



ngrx-store ngrx-store-4.0 (2)

Recientemente, ngrx store cambió la forma de registrar las variables de la tienda en una aplicación angular.

¿Cuál es la diferencia entre StoreModule.forRoot () y StoreModule.forFeature ()

¿Necesitamos registrar ambos para que la aplicación funcione?


He encontrado la respuesta del siguiente blog.

https://blog.dmbcllc.com/ngrx-4-lazy-loading/

Siempre importar llamadas forRoot () Creo que esto es probablemente bastante obvio, pero solo para el registro, deberá asegurarse de que ya ha importado el almacén raíz y el módulo de efectos en su aplicación principal.

imports: [ StoreModule.forRoot({}), EffectsModule.forRoot([]), ...

Si tiene reductores o efectos que se aplican a este nivel, debe agregarlos aquí, pero incluso si no tiene ningún reductor o efecto en el nivel raíz de su aplicación, debe hacer estas dos llamadas. De lo contrario, las llamadas forFeature () no podrán acceder al almacén raíz ni a la ubicación del efecto para agregar los reductores y los efectos de la función.