在Pluralsight开设课程时,我遇到了问题。
angularFormsApp.config(
["$routeProvider", "$locationProvider",
function ($routeProvider, $locationProvider) {
$routeProvider
.when("/home", {
templateUrl: "app/Home.html",
controller: "HomeController"
})
.when("/newEmployee", {
templateUrl: "app/Employee/employeeTemplate.html",
controller: "employeeController"
})
.when("/updateEmployee/:id", {
templateUrl: "app/Employee/employeeTemplate.html",
controller: "employeeController"
})
.otherwise({
redirectTo: "/home"
});
$locationProvider.html5Mode({
enabled: true,
requireBase: false
});
}]);

我必须添加' requireBase'在查看论坛之后,因为它在没有使用它的情况下给出错误。现在,如果运行我的代码,我无法直接转到“更新员工”页面。当我点击更新员工时,没有任何反应,我按下取消,然后添加员工'但是“更新员工”#39;变得可见而不是添加'。当我点击提交时,它给了我“未找到”#39;没有输入调试代码的服务器端错误。
我评论了代码
$locationProvider.html5Mode({
enabled: true,
requireBase: false
});
查看正在传递的网址,然后才能正常工作。能不能帮我解决这个问题,因为实际上我们必须使用这段代码隐藏网址。
答案 0 :(得分:1)
我终于找到了答案。此方法的快捷方式是:
$locationProvider.html5Mode(true);
这将等于
$locationProvider.html5Mode({
enabled: true,
requireBase: true,
rewriteLinks: true
});
我做错了当我使用快捷方式时,浏览器中的f12工具发出以下错误: “locationProvider需要一个基础href标签” 我把它与上面语句中的requireBase参数混淆了一样,对我来说没什么用。 我添加了以下内容:
<base href="/" />
在我的Index.cshtml页面的head部分,它工作正常。