如何在页面加载时只显示一次角度bootstrap-modal?

时间:2016-05-31 08:45:39

标签: javascript angularjs session bootstrap-modal angular-bootstrap

我可以在页面加载时显示引导模态,即使路径发生变化,模态也会触发。就像我使用浏览器后退按钮或前进按钮从其他页面返回同一页面一样。如果它显示在页面重新加载,这对我来说没问题,但在路线更改也显示。
这是我用来在页面上显示的代码load.i已经尝试了一些在线解决方案,但没有工作。可能是可能的重复。但其他解决方案对我不起作用。我试过onroutechangestart - >隐藏,但它仍在显示,如何做到这一点。任何人都可以帮助我。

angular.element(document).ready(function () {
   $scope.showModal = true;
});

1 个答案:

答案 0 :(得分:2)

您可以创建一个控制应用状态的工厂

app.factory('startFact',function(){

        var isStarted = false;

        return{
            isStarted: function(){
                return isStarted;
            },

            startApp: function(){
                isStarted = true;
            },
        };
    });

在控制器中

app.controller('mainCtrl', ['$scope','startFact', function ($scope, startFact) {
        $scope.init = function () {

            if (!startFact.isStarted()) {
                $scope.showModal = true;
                startFact.startApp();
            }
        };
    }]);

调用init函数

<body ng-controller="mainCtrl" ng-init="init()">