问题标签 [angular-ui-router]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - 根据 ui-router 中的用户角色限制对某些状态的访问
我正在构建一个应用程序,我想根据用户角色限制对状态的访问。如果用户尝试访问受限状态,我希望根据他的用户角色将他重定向到默认状态。我将如何实现这一点?
我猜我需要使用 $stateChangeStart 事件,但我不确定我将如何实现它。
注意:出于示例的目的,您可以假设我有一个存储用户对象并具有他的角色的工厂。
html - 用于两种不同操作的一段路线
我需要使用 angular-ui 路由器将一个段的路由解析为不同的行为。
例如我这样做:
如果有人访问,使用上面的示例:
/Johndoe -> 返回该路由是用户并转换到 parent.user.profile /Newyork -> 返回该路由是一个地点并转换到 parent.place.page
使用这种方法的问题是,当我编写解决 /Johndoe/likes 的路线时,浏览器再次转到 /Johndoe,我正在考虑检查参数的长度等......但也许有人做了类似的更好的事情。
有人试图建立类似的东西?我卡在这一点上。
非常感谢!!
javascript - 使用 ui-router 和 ngTouch
我正在使用 UI-Router 制作一个 Angular.js 网站。但是,我还需要 ngTouch 来消除设备上 300 毫秒的触摸延迟。
ui-router 建议您使用 ui-sref 指令进行导航。ngTouch 只影响 ngClick。
有没有推荐的方法来解决这个问题?新指令?调用 $state.go 的作用域函数?
javascript - 在运行应用程序并切换到路由或状态之前解析 $http 请求
我编写了一个应用程序,在处理路由之前,我需要在应用程序运行时检索当前登录的用户信息。我使用ui-router来支持多个/嵌套视图并提供更丰富的有状态路由。
当用户登录时,他们可能会存储一个代表其身份验证令牌的 cookie。我将该令牌包含在对服务的调用中,以检索用户的信息,其中包括他们所属的组。然后在服务中设置生成的身份,在该服务中可以检索并在应用程序的其余部分中使用它。更重要的是,路由器将使用该身份来确保它们已登录并属于适当的组,然后再将它们转换为请求的状态。
我有这样的代码:
如果我登录、导航、注销等,一切都会按预期工作。问题是,如果我在登录时刷新或删除 URL,我会被发送到登录屏幕,因为身份服务调用没有在状态改变之前完成。但是,在该呼叫完成后,如果有链接或其他东西到状态,我可以继续按预期工作main
,所以我快到了。
我知道您可以让状态在转换之前等待解析参数,但我不确定如何继续。
angularjs - 嵌套的 ui 视图在 Angular 1.2.0-rc.3 中不起作用
我整天都在尝试让 AngularUI 路由器与 1.2.0-rc.3 一起工作,但无济于事。我很确定这是一个错误,因为 rc3 中已经更改了很多东西,但也许有人找到了解决方法。
这就是我想要做的:
在我的app.config()
当我转到 时/login
,我的模板会按预期显示。当我去/
或/reports
然而,我什么也看不见。我的文件和文件<div ui-view></div>
中都有一个,所以这不是问题。index.html
views/main.html
有没有人遇到同样的问题,或者我做错了什么?
angularjs - 在 Angular UI 路由器中嵌套路由
(AngularJS v1.2.0-rc.3 + Angular UI-Router v0.2.0)
在我的index.html
,我有以下代码:
在我的 app.js 中,我有以下代码:
我可以很好地到达以下路线:index.html/projects
, index.html/projects/1
,但我无法到达这条路线:index.html/projects/1/campaigns
有谁知道我为什么不能?
如果您能回答我如何在与projects.one.campaigns
状态相同的 URL 页面上显示状态,则可以加分projects.one
。
angularjs - Angular ui-router 无法解析命名依赖项
我最近从 ui-router 0.0.1 迁移到 0.2.0。自迁移以来,ui-router 无法解析需要注入视图控制器的命名依赖项。这是适用于 0.0.1 版但在 0.2.0 版中失败的示例代码
i18nService 是一个返回承诺的简单服务
使用 v0.2.0 时出现错误“Unknown provider: i18nProvider <- i18n”
如果我将解析配置更改为:
一切正常。这是预期的行为,还是我缺少一些配置?
这是 plunker:http ://plnkr.co/edit/johqGn1CgefDVKGzIt6q?p=preview
javascript - 带有 ui-route 的 angularFireAuth
我正在尝试将angularFireAuth
(来自 AngularFire - Firebase)与ui-route
.
问题是angularFireAuth
需要ng-route
作为依赖项,所以我必须将它包含在我的模块中。
现在唯一可行的方法是将其包含ng-route
在我的模块中,但不对其进行配置。
有没有更好的办法?
谢谢
angularjs - 带有 ui-router 和 AngularJS 的多个嵌套 ui-views
我只想首先说我查看了尽可能多的与此问题相关的堆栈溢出问题,并且我没有看到任何关于我遇到的问题的问题。有些是相似的,但不是真的。这是问题:
我设置了以下 $stateProvider:
以下是与之配套的 index.Html:
这是 ViewC.html:
我需要让所有 ViewA、B、C 基本上相互独立,基本上它们都是各自的状态机。它们都需要保持相同的视图,因为所有三个都需要保持它们的状态,即使其他一个发生变化。我遇到的最大问题是我无法初始化“ViewCDetails”,并且我无法添加任何影响其中一个视图的状态,而无需冲洗其他两个视图。有没有办法添加只影响一个视图而不会对其他两个视图产生不利影响的状态?还要注意的是,这应该是一个 SPA,所以它不是 URL 驱动的。
angularjs - 如何在 ui-router 中使用 stateParam 设置子状态
我一直在为以下场景正常工作而苦苦挣扎。我正在使用带有 angularjs 的 ui-router,我需要类似的东西:
父状态: .state('parent', { url: '/parent/:someUserId' }
子状态为: .state('parent.child', { url: '/child' }
我的要求是子状态应该采取诸如'parent/:someUserId/child'之类的路线
我怎么能做到这一点?