使用基于应用程序状态/数据的UI路由器
using UI-Router based on application state/data
是否可以根据数据条件使用Angulars ui路由?例如,假设我需要实现某种订阅流。最终,用户会看到一个页面,告诉他订阅成功与否。
但在流动过程中,根据数据,需要做出一些决定。例如:如果用户已经登录,我们需要知道他将使用什么电子邮件地址进行订阅,并且用户会收到一个请求他发送电子邮件的视图。如果未登录,则用户将获得登录/注册屏幕。
我花了一些研究才从角度认识到"状态"实际上是一种观点,所以在谷歌上搜索状态会给我错误的结果。我在这里也遇到过这种情况(我觉得情况类似)。在评论中有一个指向此处的链接但我真的不知道这是否真的是我需要的。
所以,简单地说:我可以使用ui路由器并根据数据条件更改页面的视图吗,例如:
/* this could be set by an ng-init directive */
$scope.isLoggedOn = false;
...
function showView() {
if $scope.isLoggedOn --- > show the email view
if not $scope.isLoggedOn --- > show the login/registration view
};
*编辑*根据Ran Saspotas的回答,我创建了一个Plunker演示。不要对它期望太高,它非常基本,但至少它有效。这是链接稍后在测试嵌套视图和控制器时,我可能会添加更多功能。
ui路由器有一个名为$state的服务,您可以将其注入控制器。通过这种方式,您可以控制要使用的视图,例如-$state.go("登录")这将触发您在配置部分中定义的登录状态。就是这样。你可以查看ui路由器文档-http://angular-ui.github.io/ui-router/site/#/api/ui.router
祝你好运。
相关文章:
- web浏览器中的离线应用程序存储数据并在之后上传
- 使用应用程序状态js和视图在angular js url上传递两个参数
- 来自应用程序状态的Jquery数据表源
- 美国地图插件,具有状态数据/悬停功能的新按钮
- 检测Ionic中特定的应用程序状态变化
- 从脚本后加载的处理程序追加数据
- 使用AsyncStorage实例化持久应用程序状态
- 引导程序窗体帮助程序-状态选择器-选择类
- 如何在类似Om的不可变应用程序状态下对关系数据进行建模
- 视窗 8 应用程序在线数据
- 如何将应用程序的数据输入语言限制为英语(或拉丁字母)
- Chrome扩展程序:将数据存储在后台
- 在节点.js中保存应用程序状态
- ReactJS加载有状态数据,优化
- 在状态更改时发送带有状态数据的 AJAX 请求
- Chrome扩展程序:将数据发送到使用chrome.windows.create创建的窗口
- 引导程序 3 调整表数据和输入字段的大小
- 使用基于应用程序状态/数据的UI路由器
- Ionic混合应用程序,在退出时保存应用程序状态/数据
- 在 react-redux 应用程序状态的数据结构中具有 didInvalidate 属性的目的是什么?