Nad*_*awi 3 angularjs angular-routing
我正在将Angular合并到现有rails应用程序的单个页面中.
使用以下内容,一切都与页面内的路由完美配合
app.config(function($routeProvider, $locationProvider) {
$routeProvider
.when('/services/:id', {
templateUrl: "/javascripts/angular/templates/service_ui/service.html",
controller: "ServiceCtrl"
})
$locationProvider.html5Mode(true);
});
Run Code Online (Sandbox Code Playgroud)
但是,我想维护与Angular无关的链接的正常功能.例如,我们在标题中有许多链接,这些链接链接到其他地方,现在被角度路由器捕获.
我在以下网址找到了一些可能的解决方案:https://groups.google.com/forum/?fromgroups#!topic/angular/basidvjscRk
但基本路径方法似乎不起作用..而target ="_ self"方法相当突兀.有没有更好的方法让angular忽略未在config函数中指定的路由?
我知道有一个.otherwise()方法,但这似乎是一个黑客.我错过了什么吗?
非常感谢!
我们有一个相对"传统"的Web应用程序,因为大多数链接会触发整页重新加载; 很少有链接通过Angular的路由系统.在我们的模块定义之后,我们有以下内容:
app.run(function($location, $rootElement) {
$rootElement.off('click');
});
Run Code Online (Sandbox Code Playgroud)
这样就可以阻止Angular用来操作URL 的内置拦截点击,例如当您点击链接时; 美中不足的是,你现在必须使用$location需要随时手动角,以尽自己的URL魔术(例如通过ngClick和操纵功能$location相应).
您可以考虑$rootElement.off结合使用特殊指令或配置函数,在您检测到的链接上重新安装此行为包含某个URL片段.
| 归档时间: |
|
| 查看次数: |
3964 次 |
| 最近记录: |