一尘不染

uI:Controll android backbutton路线:

angularjs

我正在使用Onsenui在Cordova中开发一个android应用程序,单击设备后退按钮时我想在其中导航到上一页我正在使用此问题的答案来解决问题

这是我的代码

document.addEventListener("backbutton",onBackButtonPressed, false);
    function onBackButtonPressed(){
            alert('backbutton');
            var element = document.querySelector( ".navigator-container");
            var scope = angular.element( element ).scope();
            scope.popPage();
    }

我会收到以下错误

“未捕获的TypeError:无法读取未定义的属性’popPage’”


阅读 237

收藏
2020-07-04

共1个答案

一尘不染

可能.navigator-container已被弃用,这就是为什么我建议您通过将ons- navigator用作参数来获取导航器的原因document.querySelector()

这是固定代码:

document.addEventListener("backbutton",onBackButtonPressed, false);
    function onBackButtonPressed(){
            alert('backbutton');
            var element = document.querySelector("ons-navigator");
            element.popPage();
}

编辑

假设您正在使用旧版本的Onsen UI(如1.3.4),并假设导航器具有var='myNavigator'属性,则可以使用以下代码:

document.addEventListener("backbutton",onBackButtonPressed, false);
    function onBackButtonPressed(){
            alert('backbutton');
            var element = document.querySelector("ons-navigator");
            var scope = angular.element(element).scope();
            scope.myNavigator.popPage();
}
2020-07-04