Angularjs从angular外部重定向
angularjs redirect from outside angular
我有一个ng app和一个ng view。app有多个控制器
从外部角度,遗留的JS代码,我想重定向一个特定的控制器。
var e = document.getElementById('mApp');
var scope = angular.element(e).scope();
scope.$apply(function() { scope.$location.path("/account/login"); });
我试过$scope。$location,它告诉我$location没有定义所以我一定是做错了什么
$location
是一个Angular服务,它不是$scope的属性(除非你在其他地方添加了它)。要让$location
在你的应用程序之外,你可以使用$injector
服务-像这样:
var e = document.getElementById('mApp');
var $injector = angular.element(e).injector();
var $location = $injector.get('$location');
$location.path("/account/login");
我是这样解决这个问题的。这将允许你从angular外部在angular中重定向。
$('html').injector().get('$location').path("/where/you/want/to/go");
$('html').scope().$apply();
$('html')
应该是你的根角元素(其中ng-app设置)
我是这样解决的,我有一个普通的Javascript函数:
function navigateTo(url) {
location.href = url;
}
我在angular (application run)中覆盖了:
$window.navigateTo = function (url) {
$location.url(url);
$rootScope.$applyAsync();
};
相关文章:
- asp.net MVC,重定向到视图,视图打开新窗口到外部url,它'It’’’’我们被当成一种风景
- 防止外部页面重定向我的(父)页面
- 单击外部链接后重定向,只打开一个选项卡/窗口
- 从外部php文件重定向页面(在ajax调用中)
- 从外部 iFrame 重定向和链接中删除历史记录
- 在所有浏览器上执行没有扩展名.js外部脚本重定向
- 从框架内部重定向到外部页面并“清除框架”
- Visual Studio 13,将HTML5网页重定向到外部网站
- 如何重定向外部生成的动态链接
- 重定向到外部Javascript函数中的URL不起作用
- 角度路由-重定向到外部站点
- 外部链接的临时页面重定向
- Rails:重定向到外部站点之前显示警报
- 如何对一个主要负责重定向到应用程序外部页面的Angular服务进行单元测试
- POST到外部URL (webhook),但重定向到不同的URL
- 如何在不使用组件的情况下从angular2路由重定向到外部URL
- Angularjs从angular外部重定向
- 如何使用angularjs的routeProvider重定向到外部URL ?
- 当页面A在iframe外部加载时,重定向到页面B并在iframe中加载页面A
- 如何在Meteor中重定向到外部URL并收集客户端数据