javascript - 如何在页面加载时仅显示一次 Angular 引导模式?

标签 javascript angularjs session bootstrap-modal angular-bootstrap

我可以在页面加载时显示引导模式,即使路由更改,模式也会触发。就像我使用浏览器后退按钮或前进按钮从其他页面返回同一页面一样。如果它在页面重新加载时显示,这对我来说没问题,但在路线更改时它也会显示。
这是我用来在页面加载时显示的代码。我在网上尝试了一些解决方案,但没有成功。它可能是重复的。但其他解决方案对我不起作用。我尝试过使用 onroutechangestart --> 隐藏,但它仍然显示,该怎么做。谁能帮帮我吗?

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

最佳答案

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

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

        var isStarted = false;

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

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

在 Controller 中

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()">

关于javascript - 如何在页面加载时仅显示一次 Angular 引导模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37540939/

相关文章:

javascript - 从 Ember 中的 Controller 操作返回一个 promise ?

javascript - 如何将值从主视图传递到 subview Backbone.js

甲骨文顶点 : redirect to the page user requested after login

java - 如何在不重启应用服务器的情况下清除struts2 session 属性中的数据

javascript - 根据用户使用 jQuery 提供的值附加文本输入

javascript - 是什么让 Firebug/Chrome 控制台将自定义对象视为数组?

angularjs - 是否可以使 ng-grid 响应?

javascript - 我如何调用另一个 Controller 中的函数(Angularjs)

javascript - Promise-mysql 返回 promise

magento - session 的 magento + memcache 中的 session.save_path 不正确