NgRx自定义序列化程序的问题-类型错误

时间:2019-01-28 17:49:03

标签: angular ngrx ngrx-router-store

我正在尝试使用自定义序列化程序实现ngx-router-store-使用其文档here中显示的代码,但是出现以下错误:

ERROR in src/app/app.module.ts(58,13): error TS2345: Argument of type '{ serializer: typeof CustomSerializer; }' is not assignable to parameter of type 'StoreRouterConfig | StoreRouterConfigFunction'.
  Object literal may only specify known properties, and 'serializer' does not exist in type 'StoreRouterConfig | StoreRouterConfigFunction'.

app.module.ts

imports: [
    StoreModule.forRoot(reducers, { metaReducers }),
        RouterModule.forRoot([
            // routes
        ]),
        StoreRouterConnectingModule.forRoot({
            serializer: CustomSerializer,
        }),
        .......
       ]

reducers / index.ts

export const reducers: ActionReducerMap<AppState> = {
    router: routerReducer
};

我正在使用路由器存储版本7.1.0:

enter image description here

StoreRouterConnectingModule.forRoot中的config对象接受的唯一属性是stateKey。查看StoreRouterConnectingModule的forRoot方法,所需的类型为StoreRouterConfig |。错误中详细说明的StoreRouterConfigFunction。

我不确定我是否做错了什么,是否有未实施的内容,或者文档是否存在版本差异。

1 个答案:

答案 0 :(得分:1)

您可以尝试清理node_modules文件夹并重新安装吗?还要确保所有部门都是v7。

我刚刚从文档中尝试了配置,它在这里工作。