Удалить параметры во время $ stateChangeSuccess - PullRequest
0 голосов
/ 05 апреля 2019

У меня есть приложение Cordova, созданное с помощью ionic и angularjs, чтобы исправить проблему, мне пришлось перехватить изменение состояния и добавить некоторые параметры

    $rootScope.$on('$stateChangeStart',
        function (event, toState, toParams, fromState, fromParams) {
            var par = Object.keys(toParams);
            var toBlock = false;
            if (par.length > 0) {
                par.forEach(function (item) {
                    if (toParams[item] == null) {
                        toBlock = true;
                        toParams[item] = "-1";
                    }
                });
            }
            if (toBlock == true) {
                event.preventDefault();
                $state.go(toState, toParams);
            }
        });

Мне пришлось сделать это, потому что, когда некоторые параметры равны нулюконтроллер инициализируется дважды из-за ошибки angularjs.

Теперь я исправил эту ошибку, добавив эти параметры, но я хотел бы удалить их, чтобы контроллер получил нулевое значение, а не другое значение.

Я пытаюсь сделать что-то вроде этого

   $rootScope.$on('$stateChangeSuccess',
        function (event, toState, toParams, fromState, fromParams) {
            var par = Object.keys(toParams);
            if (par.length > 0) {
                par.forEach(function (item) {
                    if (toParams[item] == "-1") {
                        toParams[item] = null;
                    }
                });
                $stateParams = toParams;
            }
        });

, но это не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...