我正在一个项目上,我需要将.NET Core用于后端,http服务的cuz以及其他功能。一切都可以处理请求,但是我有一个前端问题。我正在尝试使用AngularJS打开特定页面。您知道,当您打开.NET Core应用程序时,它会向您显示ip:localhost / api / values,但我不想要我的index.html,实际上是我的dashboard.html
这是我的代码,所以:
index.html,位于主文件夹而不是wwwroot中的文件
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>titlu</title>
</head>
<body ng-app="app">
<ui-view></ui-view>
<!-- LLIBRARIES -->
<script src="node_modules/angular/angular.js"></script>
<!-- SCRIPTS -->
<script src="wwwroot/app.js"></script>
<script src="wwwroot/dashboard/dashboard.js"></script>
<script src="node_modules/@uirouter/angularjs/release/angular-ui-router.js"></script>
我与AngularJS一起使用的app.js女巫设置默认路由dashboard.html
var app = angular.module('app', ['ui.router']);
app.config(function ($stateProvider, $urlRouterProvider) {
var dashboard = {
name: "dashboard",
url: "/dashboard",
templateUrl: "./dashboard/dashboard.html"
};
$stateProvider.state(dashboard);
$urlRouterProvider.otherwise('/dashboard');
});
,而我的dashboard.html是一个基本的html页面。
我尝试了其他方法,例如
app.UseDefaultFiles(); app.UseStaticFiles(); 但这对我不起作用。
任何帮助都会很棒。 非常感谢!!!
答案 0 :(得分:0)
您可以在Startup.cs中找到它:
public void Configure(IApplicationBuilder app,
IHostingEnvironment env,
ILoggerFactory loggerFactory)
{
app.UseStaticFiles();
app.UseMvc(routes =>
{
routes.MapRoute("spa-fallback", "{*anything}", new { controller = "SPA", action = "Index" });
routes.MapWebApiRoute("defaultApi", "api/{controller}/{id?}");
});
}
之后,您可以创建SPAController并在Index()方法上提供index.html:
public IActionResult Index()
{
return File("~/index.html", "text/html");
}