Angular 通用无法读取未定义的 属性 'some'

Angular Universal Cannot read property 'some' of undefined

我在添加具有 angular 通用的 clientProject 时出现以下错误。没有进一步的解释。谁能帮忙? 无法读取未定义的

的 属性 'some'

如果您的路由模块中已有路由器选项,则此问题与您的路由模块有关

以防其他人也遇到困难:

问题

ng add @nguniversal/express-engine --clientProject [PROJECTNAME]

您需要删除您的 RouterOptions,因为 Angular 需要修改该代码,作为它在您添加 @nguniversal/express-engine.[=19= 时对您的项目所做的自动更改的一部分]

分辨率

app-routing.module.ts 中的以下代码更改为:

const options: ExtraOptions = {
    scrollPositionRestoration: 'enabled',
    onSameUrlNavigation: 'reload',
    urlUpdateStrategy: 'eager',
    anchorScrolling: 'enabled',
    initialNavigation: 'enabled'
}

@NgModule({
    imports: [RouterModule.forRoot(routes, options)],
    exports: [RouterModule],
})
export class AppRoutingModule {}

以下内容:

@NgModule({
    imports: [RouterModule.forRoot(routes)],
    exports: [RouterModule],
})
export class AppRoutingModule {}

然后 运行 再次执行命令。这次它应该没有错误地完成,并且您将进行正确的项目更改。 现在您可以使用自定义 RouterOptions.

将代码改回其原始状态

More info on this Github issue page