我正在创建一个 Angular 项目并出现以下错误,这使得我的页面无法加载: ERROR NullInjectorError: R3InjectorError(Standalone[_AppComponent])[ActivatedRoute -> ActivatedRoute -> ActivatedRoute]: NullInjectorError: No provider for ActivatedRoute!
由于它是 Angular v17,所以我没有 AppModule。这是我的以下代码:
应用程序配置.ts
import { ApplicationConfig } from '@angular/core';
import { provideRouter } from '@angular/router';
import { routes } from './app.routes';
export const appConfig: ApplicationConfig = {
providers: [provideRouter(routes)]
};
应用程序组件.ts
import { Component, LOCALE_ID } from '@angular/core';
import { registerLocaleData } from '@angular/common';
import { RouterLink, RouterLinkActive, RouterOutlet } from '@angular/router';
import { SharedModule } from './shared/shared.module';
import localePT from '@angular/common/locales/pt';
registerLocaleData(localePT);
@Component({
selector: 'app-root',
standalone: true,
imports: [SharedModule, RouterOutlet, RouterLink],
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
providers: [{provide: LOCALE_ID, useValue: 'pt-br'}]
})
export class AppComponent {
title = "app";
}
应用程序.routes.ts
import { Routes } from '@angular/router';
import { HomeComponent } from './features/pages/home/home.component';
export const routes: Routes = [
{ path: 'home', component: HomeComponent },
{ path: '', redirectTo: 'home', pathMatch: 'full' }
];
先感谢您!
我尝试在 AppComponent 中添加 RouterModule.forRoot(routes) ,但没有成功。我尝试在 AppComponent 上导入ActivatedRoute,但它引发了另一个错误:错误错误:NG0204:无法解析ActivatedRoute的所有参数:(?,?,?,?,?,?,?,?)。我还尝试在 AppComponent 中导入 ActivateRoute,如下所示,但它返回: ERROR 错误:NG04002:无法匹配任何路由。URL 段:“主页”
import { Component, LOCALE_ID } from '@angular/core';
import { registerLocaleData } from '@angular/common';
import { ActivatedRoute, RouterLink, RouterOutlet } from '@angular/router';
import { SharedModule } from './shared/shared.module';
import localePT from '@angular/common/locales/pt';
import { routes } from './app.routes';
registerLocaleData(localePT);
@Component({
selector: 'app-root',
standalone: true,
imports: [SharedModule, RouterOutlet, RouterLink],
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
providers: [{provide: LOCALE_ID, useValue: 'pt-br'}, {provide: ActivatedRoute, useValue: routes}]
})
export class AppComponent {
title = "app";
}
由于 Angular v17 没有 AppModule,也不需要它,所以我没有创建它。
我希望我的页面能够正确加载,但它不允许它加载。