StoreModule.forFeature不存在

时间:2018-04-23 15:20:02

标签: angular ngrx ngrx-store ngrx-store-4.0

我试图获取现有的ngrx存储状态并将其重构为子功能模块。问题是当我在我的功能模块导入中使用StoreModule.forFeature时......我在编译时遇到错误:

ERROR in [at-loader] ./src/app/components/login/login.module.ts:67:21
TS2339: Property 'forFeature' does not exist on type 'typeof StoreModule'.

我实际上在node_modules / @ ngrx / store中搜索了" forFeature"没有结果。然后我重新安装了@ ngrx / store& @ ngrx / core,仍未获得' forFeature'的搜索结果。我检查了文档和' forFeature'仍然列在文档的列表中,而不是删除。

导入语句如下:

import {StoreModule} from "@ngrx/store";
import {reducers} from "./rdx/reducers/index"; ...
@NgModule({
imports: [StoreModule.forFeature('loginFeature',reducers)]
...
}

使用o NGRX的版本如json包中所示如下:

"@ngrx/core": "^1.2.0",
"@ngrx/store": "^2.2.3",

还搜索了谷歌这个问题没有结果。只有" forRoot"到"提供商店"我已经使用过了。

2 个答案:

答案 0 :(得分:2)

解决了这个问题。 问题遗留下来:

  1. 当我安装ngrx时,它会自动安装最新的ngrx版本,意思是 2.2.3 ,安装最新的我必须使用 npm install - 保存@ ngrx / store @ latest @ ngrx / core @ latest ,安装“@ ngrx / store”:“^ 5.2.0”

  2. ngrx的文档 - 在他们的github文档中,他们指示您专门安装ngrx,如下所示: npm install @ ngrx / core @ ngrx / store @ 2.2.3 --save ,您可以在安装下的以下链接中看到这一点:https://github.com/ngrx/store

答案 1 :(得分:0)

您的代码还有其他问题。

错误没有说"属性' forFeature'在StoreModule"

类型中不存在

它表示"属性' forFeature'在类型TYPEOF StoreModule"上不存在(应该是未定义的)。