इस मामले में मुझे कोणीय 2 और नवीनतम राउटर के आरसी 5 का उपयोग करके इस समस्या का सामना करना पड़ता है।कोणीय 2 आरसी 5 और @ कोणीय/राउटर 3.0.0-आरसी .1 अमान्य कॉन्फ़िगरेशन या बग?
मेरे routes.ts फ़ाइल यह है:
import {
provideRouter,
Routes,
RouterModule
}
from '@angular/router';
import {
OverviewComponent,
LoginComponent,
ProfileComponent
} from './shared';
import { AuthGuard } from './auth.guard';
import { HasToken } from './common/index';
const routes: Routes = [
{
path: '',
component: OverviewComponent,
canActivate: [AuthGuard]
},
{
path: 'login',
component: LoginComponent
},
{
path: 'profile',
component: ProfileComponent,
canActivate: [AuthGuard]
},
{
path: '**',
redirectTo: '/login'
}
];
export const authProviders = [AuthGuard, HasToken];
export const appRouterProviders = [
provideRouter(routes),
authProviders
];
export const routing = RouterModule.forRoot(routes);
और मेरे app.module.ts फ़ाइल (बूटस्ट्रैप) यह है:
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import {NgModule} from '@angular/core';
import {RouterModule} from '@angular/router';
import {BrowserModule} from '@angular/platform-browser';
import { AppComponent } from './app.component';
import {appRouterProviders, routing} from './routes';
import {
OverviewComponent,
LoginComponent,
ProfileComponent
} from './shared';
@NgModule({
declarations: [
AppComponent,
OverviewComponent,
LoginComponent,
ProfileComponent
],
imports: [
BrowserModule,
CommonModule,
// Router
routing,
// Forms
FormsModule,
],
providers: [
appRouterProviders,
provide(AuthHttp, {
useFactory: (http) => {
return new AuthHttp(new AuthConfig({
headerName: 'Authorization',
headerPrefix: 'Bearer',
tokenName: 'token',
tokenGetter: (() => localStorage.getItem('token')),
globalHeaders: [{'Content-Type': 'application/json'}],
noJwtError: false,
noTokenScheme: false
}), http);
},
deps: [Http]
})
], entryComponents: [AppComponent],
bootstrap: [AppComponent]
})
export class AppModule {
}
और अंत में अपनी प्रविष्टि फ़ाइल (main.ts) यह है:
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { enableProdMode, provide } from '@angular/core';
import { Http } from '@angular/http';
import { AuthHttp, AuthConfig } from 'angular2-jwt';
import { AppModule, environment } from './app/';
if (environment.production) {
enableProdMode();
}
platformBrowserDynamic().bootstrapModule(AppModule);
तो जब मैं ng-serve
(यह एक कोणीय-CLI webpack परियोजना के साथ) इम इस हो रही ई चल रहा हूँ कंसोल में rror:
EXCEPTION: Error: Invalid configuration of route ' ': one of the following must be provided (component or redirectTo or children or loadChildren)
अद्यतन कोड और नई त्रुटि
Uncaught Unexpected value 'undefined' declared by the module 'AppModule'
नवीनतम अद्यतन
ऐसा लगता है बैरल के साथ कोई समस्या नहीं है। अगर मैं app.module
इसे करने के लिए घटक आयात इस त्रुटि से-पारित लेकिन एक दूसरे को दे रही है:
uri.match is not a function
मैं मार्गों लेकिन कुछ भी परिवर्तन में pathMatch
विशेषता जोड़ने के लिए निश्चित रूप से करने की कोशिश की।
ऐसा लगता है कि कोणीय का एक मुद्दा है: https://github.com/angular/angular/pull/10595 –