【发布时间】:2015-09-05 10:06:39
【问题描述】:
我正在使用 angular.js 和 asp.net webapi 编写我的博客站点。我用 angular.js 做了 url 路由。当我点击 url 但我得到 404 not found 错误。如何解决这个问题?
var blogSite = angular.module("blogSite", ["ngRoute"]);
blogSite.config(['$routeProvider', function ($routeProvider) {
$routeProvider
.when("post/:post", {
teplateUrl: 'blogpost.html',
controller: 'blogPostController'
})
.otherwise({
redirectTo: 'index.html'
});
}]);
blogSite.controller("mainPageController", function ($scope, $http, $routeParams) {
var url = baseUrl + "getpost";
$http.get(url)
.success(function (data, status, headers, config) {
if (data.length > 0) {
$scope.LastBlogPosts = data;
}
else {
$scope.LastBlogPosts = null;
}
})
.error(function (data, status, headers, config) {
console.log(status);
});
});
blogSite.controller("blogPostController", function ($scope, $http, $routeParams) {
$scope.TestMessage = "Test Message"
});
index.html 页面
div ng-controller="mainPageController">
<ul>
<li ng-repeat="blogPost in LastBlogPosts">
<a href="post/{{blogPost.PostUrl}}" class="lastPostUrl mainPagePostTitle">{{blogPost.PostTitle}}</a>
</li>
</ul>
</div>
</div>
</div>
<div ng-view>
</div>
【问题讨论】:
-
teplateUrl: 'blogpost.html',应该是templateUrl: 'blogpost.html',& angular 不提供对 html 文件的直接访问 -
我改了,但错误继续
-
mvc 视图文件夹不提供直接访问 html 文件的权限。您尝试从哪里访问 html 文件?
-
我的解决方案中有两个项目。第一个 BlogSite.API,第二个 BlogSite.UI。我没有使用 mvc 模板创建 blogsite.ui。 blogpost.html 文件在 blogsite.ui 项目中
-
控制台有错误变化吗?还是您遇到与以前相同的错误?
标签: asp.net angularjs asp.net-web-api