Angular 路由 ExtraOptions 对象
Angular Route ExtraOptions object
在配置我的 Angular(ng 版本 8.2.2)路由模块时,我想创建一个对象来处理所有配置。配置对象作为 forRoot() 函数的第二个参数进入,并且需要是 ExtraOptions (https://angular.io/api/router/ExtraOptions)
类型
如果我在线创建对象,它会起作用:
RouterModule.forRoot(routes,{ onSameUrlNavigation: 'reload' })
但不作为预定义对象。
const options = { onSameUrlNavigation: 'reload' }
RouterModule.forRoot(routes,options)
这给我一个错误:
ERROR in src/app/app-routing.module.ts(24,32): error TS2345: Argument of type '{ onSameUrlNavigation: string; }' is not assignable to parameter of type 'ExtraOptions'.
Types of property 'onSameUrlNavigation' are incompatible.
Type 'string' is not assignable to type '"reload" | "ignore"'.
我尝试将对象类型声明为:
const options: ExtraOptions = {
onSameUrlNavigation: 'reload'
}
但是我得到错误:
Cannot find name 'ExtraOptions'.
有谁知道是否可以创建一个 ExtraOptions 对象来配置路由器?
感谢您的快速回答和发布示例@jitender
我忘了从 @angular/router
导入 ExtraOptions
import { Routes, RouterModule, ExtraOptions } from '@angular/router';
您的代码似乎运行良好here确保您已从 @angular/router
导入 extraOptions
import { Routes, RouterModule, ExtraOptions } from '@angular/router';
在配置我的 Angular(ng 版本 8.2.2)路由模块时,我想创建一个对象来处理所有配置。配置对象作为 forRoot() 函数的第二个参数进入,并且需要是 ExtraOptions (https://angular.io/api/router/ExtraOptions)
类型如果我在线创建对象,它会起作用:
RouterModule.forRoot(routes,{ onSameUrlNavigation: 'reload' })
但不作为预定义对象。
const options = { onSameUrlNavigation: 'reload' }
RouterModule.forRoot(routes,options)
这给我一个错误:
ERROR in src/app/app-routing.module.ts(24,32): error TS2345: Argument of type '{ onSameUrlNavigation: string; }' is not assignable to parameter of type 'ExtraOptions'. Types of property 'onSameUrlNavigation' are incompatible. Type 'string' is not assignable to type '"reload" | "ignore"'.
我尝试将对象类型声明为:
const options: ExtraOptions = {
onSameUrlNavigation: 'reload'
}
但是我得到错误:
Cannot find name 'ExtraOptions'.
有谁知道是否可以创建一个 ExtraOptions 对象来配置路由器?
感谢您的快速回答和发布示例@jitender 我忘了从 @angular/router
导入 ExtraOptionsimport { Routes, RouterModule, ExtraOptions } from '@angular/router';
您的代码似乎运行良好here确保您已从 @angular/router
extraOptions
import { Routes, RouterModule, ExtraOptions } from '@angular/router';