storeFreeze 和 ngrx8

Udi*_*zor 2 ngrx angular ngrx-store angular8

我刚刚升级到 ngrx/store 版本 8。我注意到 ng 更新已经删除了所有 storeFreeze 的出现。也将其从metaReducer 中删除。

所以我的问题是 -为什么

在 ngrx 8 中使用 storeFreeze 是否有问题?

在 ngrx8 之前:

import { ActionReducerMap, MetaReducer } from '@ngrx/store';
import { storeFreeze } from 'ngrx-store-freeze';
import * as fromGroupMember from './group-member.reducer';
import * as fromDirectoryForm from './directory-filter-form.reducer';

export const metaReducers: MetaReducer<IState>[] =
(localStorage && localStorage.getItem('production') === 'false') ? [storeFreeze] : [];
Run Code Online (Sandbox Code Playgroud)

后:

import { ActionReducerMap, MetaReducer } from '@ngrx/store';

import * as fromGroupMember from './group-member.reducer';
import * as fromDirectoryForm from './directory-filter-form.reducer';

export const metaReducers: MetaReducer<IState>[] =
(localStorage && localStorage.getItem('production') === 'false') ? [] : [];
Run Code Online (Sandbox Code Playgroud)

tim*_*ver 6

如果您运行,这是迁移的一部分ng update @ngrx/store。它还应该添加运行时检查作为替代,因为它现在是 ngrx 的一部分:

@NgModule({
  imports: [
    StoreModule.forRoot(reducers, {
      runtimeChecks: {
        strictStateImmutability: true,
        strictActionImmutability: true,
      },
    }),
  ],
})
export class AppModule {}
Run Code Online (Sandbox Code Playgroud)