为Visual Studio使用AngularJS SPA模板。我的app.js里面有:
$stateProvider
.state('touranalysis', {
url: '/touranalysis',
templateUrl: '/views/touranalysis/index',
controller: 'tourAnalysisCtrl'
})
$locationProvider.html5Mode(true);
如果我在本地运行并点击我的链接进行touranalysis,它可以正常运行。这是导航栏中的链接。
<a href="~/touranalysis">Tour Analysis</a>
但是如果我在那个页面上,那是
http://localhost:8080/touranalysis
然后点击F5,我找不到页面错误。我错过了什么?
答案 0 :(得分:0)
我猜你的服务器上没有touranalysis页面。您正在获取页面未找到错误,因为当您单击F5时浏览器会请求touranalysis页面。加载页面后,角度路由将起作用。如果我是正确的,您的模板使用ASP.NET MVC。所以你可以添加这样的自定义路线:
routes.MapRoute(
name: "touranalysis",
url: "touranalysis",
defaults: new { controller = "touranalysisController", action = "Index" });
这样ASP.NET MVC将加载touranalysisController的索引视图,该视图应该包含ng-view。之后Angularjs将加载/ views / touranalysis / index
我希望这会有所帮助。如果您有任何问题,请与我们联系。