【发布时间】:2016-11-25 10:42:08
【问题描述】:
我有一个 asp.net MVC 应用程序,我正在尝试应用 mini-spas
我的 Angular js 设置:
appNg.config(function ($routeProvider, $locationProvider) {
$routeProvider
.when("/AccountManager/UserLogin", {
templateUrl: "/App_ng/AccountManager/Views/AccountManagerUserLoginView.html",
controller: "accountManagerUserLoginController",
})
.when("/AccountManager/UserSignup", {
templateUrl: "/App_ng/AccountManager/Views/AccountManagerUserSignupView.html",
controller: "accountManagerUserSignupController",
});
$locationProvider.html5Mode(true);
console.log("Config.Complete: appNg");
});
我在head标签中_layoutpage中的baseref(在顶部)
<base href="/" />
我在布局页面上的链接:
WORKING:
<a href="/AccountManager/UserSignup"><i class="fa fa-sign-in"></i> <span>ng UserSignup</span></a>
<a href="/AccountManager/UserLogin"><i class="fa fa-sign-in"></i> <span>ng UserLogin</span></a>
<a href="http://cnn.com"><i class="fa fa-sign-in"></i> <span>CNN.COM</span></a>
NOT WORKING:
<a href="/AngTestRoute/about2"><i class="fa fa-sign-in"></i> <span>ng About2</span></a>
前3个链接按预期工作,但最后一个链接没有,浏览器url栏中的地址发生变化,但页面保持不变。
我希望 angular 忽略路由并让我调用服务器以获取新页面,以便我可以加载嵌入与新地址相关的 mini-spa 的新页面。由于 $routeProvider 路由中不存在不起作用的地址,我希望 angular 不会过滤地址。我该如何解决这个问题?
是的,我知道我可以在 a 标签上使用 target _blank 但这不能(根据我的试验),因为这会导致在特定迷你水疗中心中应该通过角度过滤的链接产生问题。
我也读过AngularJS - How can I do a redirect with a full page load?,但没有成功。
【问题讨论】:
标签: angularjs asp.net-mvc single-page-application ngroute route-provider