要解决"Asp.NET MVC 5 / WebApi - Angular 6 路由问题",首先需要确保正确配置和使用路由。以下是一个解决方法的示例:
routes.MapRoute(
name: "AngularRoute",
url: "{*catchall}",
defaults: new { controller = "Home", action = "Index" }
);
这将捕获所有的URL,并将其重定向到HomeController的Index动作。
public ActionResult Index()
{
return View();
}
这将返回默认视图,通常是Index.cshtml。
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
const routes: Routes = [
{ path: '', redirectTo: 'home', pathMatch: 'full' },
{ path: 'home', component: HomeComponent },
{ path: 'about', component: AboutComponent },
// 添加其他路由规则
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
这将定义了几个路由规则,包括一个重定向到主页的规则。
这将显示路由组件的内容。
这样配置后,当你访问网站时,Asp.NET MVC将捕获所有URL并将其重定向到Angular 6应用的主页(通常是HomeController的Index动作返回的视图)。然后,Angular 6将根据路由规则显示相应的组件。
请注意,上述代码示例仅用于指导目的,并可能需要根据你的特定项目和需求进行适当的修改。