ui-router,modal&倍增父母

时间:2015-03-20 09:00:22

标签: angularjs angular-ui-router angular-bootstrap

我已经编写了一个代码,可以在模态窗口中登录和注册。 在模态中,我有一个ui-view可以从一个切换到另一个(文件名为authenticate.html):

<div class="login-container"  style="padding: 20px; min-height: 610px; " >
    <a  class="close" ng-click="close()" style=" float: right;   font-size: 23px;
  color: rgb(211, 214, 216);
  margin-top: -15px;
  margin-right: -5px;">x</a>
    <h1 style="text-align: center">My Logo</h1>
    <hr/>
        <div ui-view="modal" ></div>
</div>

在我的routes.js中,我将状态'模态'设为抽象,其中一个调用authenticate.html和控制器。此外,我有2个子状态(登录和注册)并将它们绑定到它们的父级('模态'状态):

.state('modal', {
                abstract: true,
                //parent: this,
                url: '/auth',
                onEnter: ['$modal', '$state', function ($modal, $state) {
                    console.log($state);
                    $modal.open({
                        templateUrl: 'client/app/views/authentication.ng.html',
                        controller: 'AuthCtrl',
                        backdrop: 'static',
                        keyboard: false,
                        resolve: {
                            isLoggedIn: function () {
                                return false;
                            },
                            $state: function () {
                                return $state;
                            },
                        }


                    });
                    //.result.finally(function () {
                    //        console.log('finally');
                    //        console.log($state);
                    //        $state.go('^');
                    //    });
                }],
                onExit: function() {
                    console.log('onExit');
                        this.close();

                }
            })
            .state('modal.login', {
                url: '/login',
                parent: 'modal',
                views: {
                    'modal@': {
                        templateUrl: 'client/app/views/login.ng.html'
                    }
                }
            })
            .state('modal.signup', {
                url: '/signup',
                parent: 'modal',
                views: {
                    'modal@': {
                        templateUrl: 'client/app/views/signup.ng.html'
                    }
                }
            })

我的问题是我不知道如何调用模态并获得调用者状态。 例如: 如果我处于'家庭'状态并且我打电话给模态,我希望能够在关闭它时返回'家'。 如果我从不同的状态调用它,我希望能够在关闭模态时返回上一步。 给父母一个国家的唯一方法是硬编码?或者它可以是一个变量? 谢谢

0 个答案:

没有答案