Web组件中如何通过手势滑动返回上一个Web页面?

Web组件中如何通过手势滑动返回上一个Web页面

阅读 270
1 个回答

解决措施

通过重写onBackPress函数来自定义返回逻辑,使用WebviewController判断是否返回上一个Web页面。

示例代码

import { webview } from '@kit.ArkWeb'; 
 
@Entry 
@Component 
struct Index { 
  controller: webview.WebviewController = new webview.WebviewController(); 
  build() { 
    Column() { 
      Web({ src: 'http://www.example.com', controller: this.controller })//需要手动替换为真实网站 
    } 
  } 
  onBackPress() { 
    // 当前页面是否可前进或者后退给定的step步(-1),正数代表前进,负数代表后退 
    if (this.controller.accessStep(-1)) { 
      this.controller.backward(); // 返回上一个web页 
      // 执行用户自定义返回逻辑 
      return true 
    } else { 
      // 执行系统默认返回逻辑,返回上一个page页 
      return false 
    } 
  } 
}

参考链接

accessStep

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
HarmonyOS
子站问答
访问
宣传栏