如何解决路由“ auth”的配置无效必须提供以下之一:component,redirectTo,children或loadChildren
我试图在我的应用目录中设置到组件的路由。由于某种原因,我保留此错误Invalid configuration of route 'auth'. One of the following must be provided: component,redirectTo,children or loadChildren
。我认为AuthComponent
显示为undefined,但我不明白为什么。我不是角度专家,所以我可能会犯语法错误。任何帮助,我们将不胜感激!
这是我的app-routing.module.ts:
import { ExtraOptions,RouterModule,Routes } from '@angular/router';
import { NgModule } from '@angular/core';
import { AuthComponent } from './auth/auth.component'
const routes: Routes = [
{
path: 'auth',component: AuthComponent
},];
const config: ExtraOptions = {
useHash: false,};
@NgModule({
imports: [RouterModule.forRoot(routes,config)],exports: [RouterModule],})
export class AppRoutingModule {}
这是我的auth.component.ts:
import { Component,OnInit,ChangeDetectorRef } from '@angular/core';
import { Router } from '@angular/router';
import { NbAuthSocialLink } from '@nebular/auth';
import { NbAuthService } from '@nebular/auth';
export declare class AuthComponent {
protected service: NbAuthService;
protected options: {};
protected cd: ChangeDetectorRef;
protected router: Router;
redirectDelay: number;
showMessages: any;
strategy: string;
errors: string[];
messages: string[];
user: any;
submitted: boolean;
socialLinks: NbAuthSocialLink[];
rememberMe: boolean;
constructor(service: NbAuthService,options: {},cd: ChangeDetectorRef,router: Router);
login(): void;
getConfigValue(key: string): any;
}
解决方法
Angular使用注释来定义似乎是您缺少的组件。
@Component({
selector: 'app-my-auth',templateUrl: './my-auth.component.html',styleUrls: ['./my-auth.component.scss'],providers: [myServiceService]
})
创建这些注释的最简单方法是让您的角度cli工作,只需运行命令ng g c Auth
(它是ng generate component Auth
的缩写),它将创建一个名为“ AuthComponent”的类并将其注册到您的模块中。
完成后,您可以将组件代码移入其中,并在路由模块中使用引用。
这些组件也需要在模块中定义才能使用。对于简单的项目,您可以将它们放在应用程序模块中,否则,通常的最佳实践是延迟加载模块并将组件分离到其中,并为在整个站点上共享的组件创建单独的模块。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。