要解决错误“Angular 9未为ActivatedRoute提供提供者”,您需要在您的组件的提供商数组中添加ActivatedRoute的提供商。这可以通过以下步骤完成:
打开引发错误的组件文件。
在组件的顶部导入ActivatedRoute:
import { ActivatedRoute } from '@angular/router';
@Component({
// 组件的其他属性
providers: [ActivatedRoute]
})
确保您的组件装饰器中的providers数组中没有重复项。
如果您的组件是通过路由器模块加载的,则还需要在路由器模块中提供ActivatedRoute。打开路由器模块文件(通常是app-routing.module.ts)。
在路由器模块的提供商数组中添加ActivatedRoute:
import { RouterModule, Routes } from '@angular/router';
import { ActivatedRoute } from '@angular/router';
const routes: Routes = [
// 路由配置
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule],
providers: [ActivatedRoute]
})
export class AppRoutingModule { }
这样,您就已经为ActivatedRoute提供了提供者,该错误应该不再出现了。