2

我正在尝试从 Angular 8 迁移到 Angular 9,并在步骤中出现以下错误:带有 DI 迁移的未装饰类。

无法迁移所有使用依赖注入的未修饰类。由于 TypeScript 程序失败,一些项目目标无法分析。

错误:错误 TS100: src\app\app.module.ts(107,25): 'AppModule' 模板编译期间出错 装饰器不支持函数调用,但在 'appReducers' 'appReducers' 引用中调用了 'combineReducers' src\app\store\reducers\index.ts(13,10) 处的 modelReducer' 'modelReducer' 在 src\app\store\reducers\model.ts(25,29) 处调用 'combineReducers'。

知道为什么我会收到此错误吗?

4

1 回答 1

1

您很可能需要装饰任何使用 DI 的类@Injectable()

前任:

@Injectable()
class MyClass {
  constructor(someService: SomeService) {...}
}

我个人推迟使用 9 直到它的 GA (由于以前的主要版本的经验)。但是,“DI”和“未装饰的类”对我来说是“你错过了 Injectable 装饰器”。

你要从 8.x 到 9 吗?

于 2020-02-07T01:12:29.097 回答