Javascript 角度2-无法匹配任何路线';auth';
我知道以前有人问过这个问题,但我没有找到适合我的情况的解决办法 当导航到localhost:8000/auth时,我收到此错误消息。指定的其他路线可以正常工作Javascript 角度2-无法匹配任何路线';auth';,javascript,angularjs,angular,angular2-routing,Javascript,Angularjs,Angular,Angular2 Routing,我知道以前有人问过这个问题,但我没有找到适合我的情况的解决办法 当导航到localhost:8000/auth时,我收到此错误消息。指定的其他路线可以正常工作 错误:未捕获(承诺中):错误:无法匹配任何路由。URL段:“auth” 错误:无法匹配任何路由。URL段:“auth” 这是我的app.module.ts import { NgModule } from '@angular/core'; import { BrowserModule } from '@angular/platf
错误:未捕获(承诺中):错误:无法匹配任何路由。URL段:“auth”
错误:无法匹配任何路由。URL段:“auth”
这是我的app.module.ts
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { Routes, RouterModule } from '@angular/router';
import { Angular2TokenService } from 'angular2-token';
import { AppComponent } from './app.component';
import { RecipeComponent } from './recipes/recipes.component';
import { RecipeDetailComponent } from './recipes/recipe-detail/recipe-detail.component';
import { RecipeService } from './recipes/recipe.service';
import { IngredientComponent } from './ingredients/ingredients.component';
import { IngredientService } from './ingredients/ingredient.service';
import { IngredientFormComponent } from './ingredients/ingredient-form.component';
import { AuthComponent } from './auth/auth.component';
@NgModule({
imports: [
BrowserModule,
FormsModule,
HttpModule,
RouterModule.forRoot([
{
path: '',
component: RecipeComponent
},
{
path: 'auth',
component: AuthComponent
},
{
path: 'recipes',
component: RecipeComponent
},
{
path: 'recipe/:id',
component: RecipeDetailComponent
}
])
],
declarations: [
AppComponent,
RecipeComponent,
RecipeDetailComponent,
IngredientComponent,
IngredientFormComponent,
AuthComponent
],
providers: [
RecipeService,
IngredientService,
Angular2TokenService
],
bootstrap: [ AppComponent ]
})
export class AppModule {
constructor(private _tokenService: Angular2TokenService) {
this._tokenService.init();
}
}
app/auth/auth.component.ts(当前为空,正在尝试加载模板)
package.json
{
"name": "geekbread_js",
"version": "1.0.0",
"scripts": {
"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ",
"lite": "lite-server",
"postinstall": "typings install",
"tsc": "tsc",
"tsc:w": "tsc -w",
"typings": "typings"
},
"license": "ISC",
"dependencies": {
"@angular/common": "2.1.2",
"@angular/compiler": "2.1.2",
"@angular/core": "2.1.2",
"@angular/forms": "2.1.2",
"@angular/http": "2.1.2",
"@angular/platform-browser": "2.1.2",
"@angular/platform-browser-dynamic": "2.1.2",
"@angular/router": "3.1.2",
"@angular/router-deprecated": "2.0.0-rc.2",
"@angular/upgrade": "2.1.2",
"angular2-in-memory-web-api": "0.0.21",
"angular2-token": "^0.1.17",
"bootstrap": "^3.3.6",
"core-js": "^2.4.0",
"reflect-metadata": "^0.1.3",
"rxjs": "5.0.0-beta.12",
"systemjs": "0.19.40",
"zone.js": "^0.6.12"
},
"devDependencies": {
"concurrently": "^3.1.0",
"lite-server": "^2.2.0",
"typescript": "^2.0.6",
"typings": "^1.0.4"
}
}
app.component.html
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" routerLink="/recipes">Geekbread</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li><a routerLink="/recipes">My Recipes</a></li>
<li><a routerLink="/auth">Sign in</a></li>
</ul>
</div>
</div>
</nav>
<router-outlet></router-outlet>
使用npm start运行服务器
app/中的所有内容都编译为buildjs/,但不是main.js将路径匹配:“full”
添加到路径为空且无子路径的路由:
{
path: '',
component: RecipeComponent,
pathMatch: 'full'
},
如何重定向到auth
?您的设置是什么,以获得auth
?我更新了app.component.html,在这里我使用登录
,但也尝试了访问我浏览器中的路径。您可以在Plunker中复制吗?在进一步的调查中,我相信这与实际的代码无关,而是与我的npm设置有关。我更新了原来的问题
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false,
"outDir": "buildjs/"
}
}
{
path: '',
component: RecipeComponent,
pathMatch: 'full'
},