AngularJS仅为下一个状态创建注销消息

时间:2015-07-20 22:08:20

标签: javascript angularjs design-patterns

这是交易:
我正在尝试创建一个全局警报消息,通知用户他已完成某项操作(例如,已注销)。

我正在使用SB Admin 2.0 from StartAngular.com 这就是我做出正确行动时的样子。

Global message

现在,问题实际上是,你会怎么做,这条消息只会持续状态? 如果我去让我们去' /登录'从这里我拍摄照片(仪表板)的状态,消息将消失。

我添加JSFiddle link 现在它不应该实际显示正确的结果,而不是给你我目前的代码。

核心是关于我使用工厂来保存我想要在不同状态之间保存的数据 在我向工厂填写我要在消息中插入的数据后,我给出了一个布尔值的信号。

然后,在控制器的开头*我寻找那个信号,如果它打开,我使用state change events删除下一个状态的注销信号**。

$scope.userUtil = userUtil;

if ('loggedOut' in $scope.userUtil){
    $rootScope.$on('$stateChangeSuccess',
        function(event, toState, toParams, fromState, fromParams){
            console.log(1);
            delete $scope.userUtil.loggedOut;
        })
}

你认为我正朝着正确的方向前进吗?你有什么方法可以用更简单的方式来做到这一点吗?

感谢您的意见。

*控制器绑定了一个名为main的 抽象 状态(包括标题和侧边栏)

**我目前使用的方法并不完美,似乎我绑定到事件的函数不是一个计时器。因此,如果我退出一次,由于每次成功进入状态,我都不会再看到该消息,无论如何都会删除注销信号。

1 个答案:

答案 0 :(得分:0)

没关系,this package完全符合我的需要。