当前位置: 首页 > 面试题库 >

uI:Controll android backbutton路线:

阎德宇
2023-03-14
问题内容

我正在使用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’”


问题答案:

可能.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();
}


 类似资料:
  • 注:本节未经校验,如有问题欢迎提issue 为什么使用它们? 线路断路器用于提供稳定性并防止在分布式系统中的级联故障。它们应该结合在远程系统之间的接口使用明智的超时,以防止单个组件的故障拖垮所有组件。 作为一个例子,我们有一个web 应用程序与远程的第三方web服务进行交互。假如第三方已用完了他们的容量,他们的数据库也在高荷载作用下熔化。假设数据库在这种情况下失败,第三方 web 服务用了很长的时

  • 我正试图与拉威尔和vue一起打造一个水疗中心。还安装了用于管理目的的Voyager。旅行者号http://localhost:8000/admin .. 它使用了laravel web路由。 现在无法访问它,我正在使用Vue路由器为我的路由:示例为我的家庭路由(vue)http://localhost:8000/home 应用程序。js 一个pp.vue Home.vue 指数刀身php 网状物p

  • 语法支持方面,目前主要依赖vitess,TiDB对SQL语法的支持。 目前仅针对MySQL语法族进行开发和测试,其他使用SQL的数据库产品暂不支持。 Profiling和Trace功能有待深入挖掘,供经验丰富的DBA分析使用。 目前尚不支持直接线上自动执行评审通过的SQL,后续会努力支持。 由于暂不支持线上自动执行,因此数据备份功能也未提供。 Vim, Sublime, Emacs等编辑器插件支持

  • 问题内容: 我有一个简单的Flask路由,我想捕获文件的路径。如果我在规则中使用它,则适用于,但无效。如何捕获任意路径,以便将其传递给视图函数? 问题答案: 使用path转换器捕获任意长度的路径:将捕获路径并将其传递给参数。默认转换器捕获单个字符串,但以斜杠停止,这就是为什么第一个URL匹配而第二个URL不匹配的原因。 如果你还想匹配根目录(斜杠和空路径),则可以添加另一个规则,该规则为path参

  • 我在我的项目中使用react router,因为每个路由都有一个问题,在每个路由器路径的开始处都添加了“#”符号。。例如:http://localhost:3000/#/login 我想去掉那个标志,但我自己解决不了。 我的路由程序是在app.jsIM检查用户是否登录,如果没有登录,那么他将重定向到 /login页面。( 下面是app.js 否则他将登录,然后我将使用名为DefaultLayout

  • 例如,我们可能希望一些路线只有在用户登录或接受条款和条件后才可访问。 我们可以使用路由哨兵来检查这些条件并控制对路由的访问。 路由哨兵还可以控制用户是否可以离开某个路由。 例如,假设用户已将信息键入页面上的表单,但尚未提交表单。 如果这时离开页面,他们将丢失信息。 如果用户尝试离开路由而不是提交或保存信息,我们可以提示用户。 Angular 提供了五种路由拦截哨兵: CanActive 激活拦截

  • 每个路由可以有不同的属性; 一些常见的属性是: path - 应用程序在特定路由上时在浏览器中显示的URL component - 当应用程序在特定路由上时要呈现的组件 pathMatch - 默认为’prefix’的可选属性。 确定是匹配完整的网址还是仅匹配开头。 当定义一个具有空路径字符串的路径设置pathMatch为’full’时,否则它将匹配所有路径。 children - 表示此路由的子

  • 通过Group可以实现路由分组,Group 路由分组可以简化你的路由撰写: 有两种方法来使用Group: 第一种,创建Group对象,通过Group方法传入 g := tango.NewGroup() g.Get("/1", func() string { return "/1" }) g.Post("/2", func() string { return "/2" }) o :=