onsen-ui с телефонной связью: готовая push-страница в приложении

Я проверяю на device.ready локальное хранилище, вошел ли пользователь уже в систему или нет. Затем мне нужно перейти либо к «home.html», либо к «login.html», но я всегда получаю справочную ошибку «Uncaught ReferenceError: ons не определен».

ons.navigator.pushPage('home.html');

Я также пробовал использовать window.onload или $(document).ready, но всегда получаю ту же ошибку. Нажатие кнопок работает нормально.

Спасибо за совет, Kornel


person Kornel B.    schedule 23.06.2014    source источник
comment
кажется, что начало пользовательского интерфейса не определено в импорте   -  person Mohammed Imran N    schedule 23.06.2014
comment
Вы должны использовать объект ons в области навигатора.   -  person KNaito    schedule 24.06.2014


Ответы (3)


ons.ready liste для события cordova deviceready и onsen загружен

ons.ready(function(){

   myNavigator.pushPage('home.html');

});
person Jesus    schedule 02.03.2015

Есть две проблемы. Один из них — область Навигатора, а другой — синхронизация. К сожалению, текущий Onsen-UI (версия 1.0.4) не имеет триггера загрузки страницы. Необходимо дождаться загрузки страницы навигатора.

Например,

    document.addEventListener('deviceready',onDeviceReady,false);

    function onDeviceReady() {
        checkScope();
    }

    function checkScope() {
        var element = document.querySelector( ".navigator-container");
        var scope = angular.element( element ).scope();
        if (scope && scope.getCurrentNavigatorItem && scope.getCurrentNavigatorItem() ) {
            scope.pushPage("page2.html");
        } else {
            setTimeout( checkScope , 100 );
        }

    }
person KNaito    schedule 25.06.2014
comment
Спасибо, событие pushPage работает, но мне нужно передать параметр, но я получаю сообщение об ошибке на проталкиваемой странице. Я использую ваш код, но вместо события scope.pushPage я вставил scope.getCurrentPage().options.foo, но получаю исключение TypeError: undefined не является функцией. Спасибо за вашу помощь! - person Kornel B.; 25.06.2014
comment
Никто не мог помочь? - person Kornel B.; 01.07.2014

Вместо этого попробуйте приведенный ниже код:

menu.setMainPage('home.html', {closeMenu: true});
person Navin S    schedule 14.04.2016