我收到了这个错误:

异常:./AppComponent类AppComponent-inline中出错 模板:0:0原因:路由没有提供者!

这是我的应用程序组件:

import {Component} from '@angular/core';
import {LoginComponent} from './login/components/login.component';
@Component({
    selector: 'my-app',
    template: '<login></login>',

})
export class AppComponent {

}

我在我的应用程序模块中try 了这个:

import { RouterModule } from '@angular/router';

  imports: [
    BrowserModule,
    FormsModule,
    HttpModule,
    LoginModule,
    RouterModule
  ],
  bootstrap: [AppComponent, RouterModule]

但我得到了一个错误:

错误:错误:在RouterModule上找不到指令注释

我发现了一些例子,但他们使用路由弃用,我没有那个文件夹.我需要这个吗?有什么建议吗?

更新:

这是我的apply.模块:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { AppComponent } from './app.component';
import { LoginModule } from './login/login.module';
import { RouterModule } from '@angular/router';
//import 'rxjs/Rx';
@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    FormsModule,
    HttpModule,
    LoginModule,
    RouterModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

应用程序.组成部分:

import {Component} from '@angular/core';
import {LoginComponent} from './login/components/login.component';
@Component({
    selector: 'my-app',
    template: '<login></login>',

})
export class AppComponent {

}

然后我就可以登录了.组成部分:

import {Component, EventEmitter, Input, OnChanges} from '@angular/core';
import {Observable} from 'rxjs/Rx';
import { LoginService } from '../services/login.service';
import { Login } from '../model/login'
import {Router} from '@angular/router';
@Component({
    selector: 'login',
    templateUrl: 'login-form',

})
export class LoginComponent {
  // Constructor with injected service
      constructor(
          private loginService: LoginService,
          private router: Router
          ){}

      submitLogin(values){

          // Variable to hold a reference of addComment/updateComment
             let loginOperation:Observable<any>;
             loginOperation = this.loginService.Login(values);
             loginOperation.subscribe(
                function(response) { console.log("Success Response" + response)},
                function(error) { console.log("Error happened" + error)},
                function() {
                   console.log("the subscription is completed");
                     this.router.navigate(['/About']);

                 }
            );

           }
}

也许问题出在这条线上:

 this.router.navigate(['/home']);

这是我的登录名.模块:

import { NgModule }       from '@angular/core';
import { BrowserModule }  from '@angular/platform-browser';
import { FormsModule }    from '@angular/forms';
import { HttpModule, JsonpModule } from '@angular/http';
import { LoginComponent } from './components/login.component';
import { RouterModule } from '@angular/router';

import { LoginService } from './services/login.service';


@NgModule({
  imports: [
    BrowserModule,
    FormsModule,
     HttpModule,
    JsonpModule,
    RouterModule  


  ],
  declarations: [
    LoginComponent
  ],

  providers: [
      LoginService
  ],

  exports:[
    LoginComponent
  ]

})
export class LoginModule {
}

推荐答案

请使用本模块

RouterModule.forRoot(
  [
    { path: "", component: LoginComponent}
  ]
)

现在把你的<login></login>换成<router-outlet></router-outlet>就这样

Angular相关问答推荐

仅在从forkJoin获得数据后订阅主题

命令不起作用的初始菜单项

AOS-如何在向上滚动时不再次隐藏元素

我正在try 将一个带有模块联盟的Angular 8项目expose 到另一个Angular 项目,Angular 是15,这可能吗?如果是这样,有什么建议吗?

Angular 17-getEnvironment InjectorProviders出现异常

如何使用来自不同可观测对象的值更新可观测对象

如果我只在组件中使用某个主题,是否需要取消订阅该主题?

如何在独立应用程序中全局禁用基于媒体查询的Angular 动画?

Angular:为什么在 ngAfterContentInit 之后变量未定义?

Angular 项目构建仅在 GitHub Actions 上失败

无法推送 Angular 项目 - Github

过滤 ngfor Angular 的计数

带有重定向的Angular 2 AuthGuard服务?

Angular 服务decorator 提供在延迟加载的根效果

如何在 Angular 2 应用程序中配置不同的开发环境

*ngIf 带有多个异步管道变量

Angular 应用程序中的语法错误:Unexpected token <

Hot and Cold observables:有 hot和 cold运算符吗?

如何对 *ngFor 应用数量限制?

@viewChild 不工作 - 无法读取未定义的属性 nativeElement