Как показать угловой загрузочный модал при загрузке страницы только один раз?

0

Я могу показать загрузочный модальный при загрузке страницы, модальный запуск даже при изменении маршрута. например, если я вернусь на ту же страницу с другой страницы, используя кнопку "Назад назад" или "Переслать". если он показывает на перезагрузке страницы, это нормально для меня, но при изменении маршрута оно также отображается.
это код, который я использую для показа на странице load.i, попробовал некоторые решения в Интернете, но не работал. Возможно, это возможный дубликат. но другие решения не работают для меня. я попытался с onroutechangestart → скрыть, но он все еще показывает, как это сделать. Кто-нибудь может мне помочь, пожалуйста.

angular.element(document).ready(function () {
   $scope.showModal = true;
});
  • 0
    предоставленный вами код будет показывать Modal всякий раз, когда ваш DOM будет готов. В каком состоянии или маршруте вы хотите, чтобы модал показывался, а не в других?
  • 0
    Я использую обычный ngRoute, а не пользовательский маршрутизатор. я хочу, чтобы этот модал отображался только в /home и если я перейду с другой страницы, он не должен показываться снова
Показать ещё 3 комментария
Теги:
bootstrap-modal
session
angular-bootstrap

1 ответ

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()">
  • 0
    Вместо этого мы можем использовать функцию ng-init = toggleModal, которая запускает модальный режим, но проблема в том, будет ли она отображаться, если я перейду на ту же страницу с другой страницы с помощью кнопки назад или некоторого перенаправления. это должно показать только один раз. Я тоже попробовал твой код. та же проблема
  • 0
    Спасибо за Ваш ответ. ваш ответ прост. я думал использовать сессию, усложнение местного хранилища
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню