我在Asp.Net Core中使用角度路由库来允许客户端路由。
但是,当我点击链接浏览到editor
视图时,我得到以下内容,其中包含额外的%2F
,这不是路由提供商中的有效路由:
http://localhost:57916/App/trips#!/#%2Feditor
而不是预期的路线:
http://localhost:57916/App/trips#!/editor
我确实查看了此路由的routeProvider配置,并看到.when检查中没有额外的正斜杠。此外,还通过Bower安装了angular-route,并匹配我当前的角度版本1.6.1
:
$routeProvider.when("/editor",
问题:
有人可以解释为什么要在路由中添加额外的正斜杠编码吗?
链接到编辑器视图的按钮:
<td><a href="#/editor" class="btn btn-sm btn-primary">Manage</a></td>
这是编辑器路线的$ routeProvider:
$routeProvider.when("/editor", {
controller: "tripEditorController",
controllerAs: "vm",
templateUrl: "/views/tripEditorView.html"
});
包含路线的完整app-trips.js文件。第一条路线适用于tripsView.html文件:
//app-trips.js
(function () {
"use strict";
//Creating the module
angular.module("app-trips", ["simpleControls", "ngRoute"])
.config(function ($routeProvider) {
$routeProvider.when("/", {
controller: "tripsController",
controllerAs: "vm",
templateUrl: "/views/tripsView.html"
});
$routeProvider.when("/editor", {
controller: "tripEditorController",
controllerAs: "vm",
templateUrl: "/views/tripEditorView.html"
});
$routeProvider.otherwise({ redirectTo: "/" });
});
})();