- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已将此模块添加到我的应用程序中:https://github.com/witoldsz/angular-http-auth/blob/gh-pages/lib/http-auth-interceptor.js
它会在 401 响应时广播一条消息,非常方便!只是不确定如何让我的 $routeProvider 监听 $rootscope.$broadcast。我想重定向到 401 时的登录页面。
我的 $routeProvide 看起来像这样:
var app = angular.module('demoApp', ['http-auth-interceptor','tastypieModule'])
.config(function($routeProvider) { $routeProvider.
when('/', {controller:HomeCrtl, templateUrl:'partials/home.html'}).
when('/sign-in', {controller:SiginInCtrl, templateUrl:'partials/sign-in.html'}).
otherwise({redirectTo:'/'});
})
最佳答案
您不会让您的 $routeProvider 监听它。您只需在 Controller 中监听它,然后使用 $location 将您的应用程序发送到适当的路由。
app.controller('MainAppCtrl', function($scope, $rootScope, $location) {
$rootScope.$on('event:auth-loginConfirmed', function(){
$location.path('/');
});
});
编辑:因为您可能有很多 Controller ,所以您希望有一个包装您的 ngView 的父 Controller ...
<div ng-controller="MainAppCtrl">
<div ng-view>
</div>
</div>
上面的 Controller 现在将出现在所有 View 中,并且一定会注册您的监听器。
关于javascript - 让 $routeProvider 监听 $rootscope.$broadcast,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13140035/
我刚刚开始学习 AngularJS,但我多次注意到同样的事情,当我们开始用 AngularJS 编写函数时,我注意到有些人像这样定义他们将要使用的函数 var mainApp = angular.mo
我遇到了一点挑战,还没有找到解决方案。当我尝试了一些事情时,我正在请求你的帮助,所以可能有人可以引导我走向正确的方向。 我在 AngularJS 中有一个 routes.js。我正在使用 $route
我正在尝试实现 named routes ,所以我不必编写整个路径(经常更改)。 我在想我可以写一个服务来返回定义的路由列表和一个将对象转换为路由的过滤器 使用示例如下所示: Click here!
AngularJS documentation表示 ngRoute $routeProvider 有一个 reload 方法。 reload() Causes $route service to re
我正在尝试了解 AngularJS 中的路由如何工作,以制作一个小应用程序,允许用户登录并在实时提要中撰写评论。然而,路线的整个概念对我来说有点模糊,我无法正确理解这一点。 我的标准index.htm
我在grails应用程序中使用angularJS。在此之前,我尝试了互联网上的样本。我试图在我的主 View 中将angularJS $ routeProvider用于部分 View 。我的工作流程如
所以我的网站并不是 100% 都是“由 AngularJS 提供支持”,其中一些只是简单的静态 HTML,比如登陆页面或面向内容的内容,这是简单的 HTML,原因很明显。 我似乎可以获得正常导航的链接
我正在使用 this Angular 路由教程。这是它给出的使用 resolve 的示例: $routeProvider .when("/news", { templateUr
我有一个非常简单的要求。 我有 3 个用户 Angular 色: 猫用户 LICUSER 所有用户 我在 $rootScope.userRole 变量中拥有用户 Angular 色的值。 我在 Ang
我有两条路线通向相同的 View 和 Controller (即我只是传入一个 id 以在 $routeParams 中访问并在其上执行 Controller 逻辑): $routeProvider
我已经添加了这样的脚本 我在我的 test.js 中做了这个 var app = angular.module('MyApp', ['ngRoute']).config
我已经尝试了几种不同的方式,我将尝试使用所有不同的方式重定向到不同的页面,但所有这些方式都出现 404 错误。 index.html 这个页面没问题,根正在渲染: You are using
有没有办法编写一个方法来解析即将到来的 $location.path 并加载特定的 html 模板或应用 $route。目前,我的应用程序有这个长长的“时间”列表,完成后将增加一倍或三倍。 .con
我已阅读与同一问题相关的帖子并交叉验证了我的代码,但问题仍然存在。 以下是我的index.html文件 Webs
我正在尝试编写 Angular.js 教程。但我想我没有正确进行路由。我已正确遵循文档,但是当我单击超链接时,angular 不会路由到指定的 html。请帮帮我。我是 Angular 的新手。提前致
我有一个问题和疑问 我的客户端使用: 以及以下脚本: 我的 routProvider 是: angular.module('myApp', []). c
我正在使用 USB 设备构建一个 chrome 应用程序。在我的主要 app.js 中,我希望始终检查设备何时添加/删除并更改 url。 angular.module('rfApp', [ '
如果 sessionStorage.logged 设置为 true,我想将 mypage 重定向到主页。下面是我的代码。为什么我下面的代码不起作用。 因为我是 angularjs 的新手,所以我不知道
我有一个应用程序,我没有使用路由提供程序,但我仍然想对更改的哈希值采取行动。当我手动更新 URL 而不是链接时, Controller 中的普通 window.onhashchange 起作用: Li
我的 app.js 中有以下 2 条路线文件,出于某种原因,我不知道何时尝试导航到 /clients/new-invoice我看到了 /clients/:clientID路线和模板。我可以转到正确页面
我是一名优秀的程序员,十分优秀!