我要開發一個簡單的角度2應用程序。我使用Angular CLI創建了一個包含路由的項目,並使用'ng generate component'命令將多個組件添加到應用程序中。然後,我指定的APP-routing.module.ts如下路由。角2路由不工作在部署到HTTP服務器
import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; import { HomeComponent } from './home/home.component'; import { AboutComponent } from './about/about.component'; import { UserComponent } from './user/user.component'; import { ErrorComponent } from './error/error.component'; import { SpecialpageComponent } from './specialpage/specialpage.component'; const routes: Routes = [ { path: '', component: HomeComponent }, { path: 'about', component: AboutComponent }, { path: 'user', component: UserComponent }, { path: 'specialpage', component: SpecialpageComponent }, { path: '**', component: ErrorComponent } ]; @NgModule({ imports: [RouterModule.forRoot(routes)], exports: [RouterModule], providers: [] }) export class AppRoutingModule { }
app.module.ts是如下。
import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { HttpModule } from '@angular/http'; import { AppRoutingModule } from './app-routing.module'; import { AppComponent } from './app.component'; import { HomeComponent } from './home/home.component'; import { AboutComponent } from './about/about.component'; import { ErrorComponent } from './error/error.component'; import { UserComponent } from './user/user.component'; import { SpecialpageComponent } from './specialpage/specialpage.component'; @NgModule({ declarations: [ AppComponent, HomeComponent, AboutComponent, ErrorComponent, UserComponent, SpecialpageComponent ], imports: [ BrowserModule, FormsModule, HttpModule, AppRoutingModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }
我還沒有爲其他組件添加任何修改。 然後我用「吳服」命令和應用程序正常工作與鏈接部署的應用程序。 如:http://localhost:4200/about
但是當我部署的HTTP服務器的項目,該鏈接不正常工作。我使用'http-server ./dist'命令部署應用程序,應用程序部署正常,但鏈接不起作用。當我去'http://localhost:4200/about',它會給出404錯誤。
上午我做錯了什麼?爲什麼'ng-serve'的作品和'http-server'不起作用?
任何幫助,將不勝感激。提前致謝。
我已經上傳我的項目github。
嘗試'進口:[RouterModule.forRoot(routes,{useHash:true})],'。如果以這種方式工作,則需要在生產服務器上啓用HTML5 pushState。 –
@GünterZöchbauer,我試過了,但是沒有運氣 –
也試着給這條路線加上'pathMatch:'full'''',',' –