HarmonyOS ArkWeb组件打开pdf预览回退无法返回预览前html页?

创建了一个首页,首页里面有个按钮,点击按钮会用ArkWeb加载一个远程html页面(页面a) ,a页面中有个pdf链接<a href="xxxx"\>,在a页面中点击此链接,可以正常加载并预览pdf,查阅过后我进行回退操作,此时会跳过页面a并返回到首页。想回退到页面a要如何操作?

阅读 605
1 个回答

可以参考此demo:

// xxx.ets
import { webview } from '@kit.ArkWeb';

class testClass {
  constructor() {
  }

  test(): string {
    return 'ArkTS Hello World!';
  }
}

@Entry
@Component
struct WebComponent {
  webviewController: webview.WebviewController = new webview.WebviewController();
  // 声明需要注册的对象
  @State testObj: testClass = new testClass();

  onBackPress(): boolean | void {
    this.webviewController.backward()
    return true
  }

  build() {
    Column() {
      Button("load html").onClick(() => {
        this.webviewController.loadUrl($rawfile('index.html'))
      })
      // Web组件加载本地index.html页面
      Web({ src: "", controller: this.webviewController }).domStorageAccess(true).javaScriptAccess(true)// 将对象注入到web端
        .javaScriptProxy({
          object: this.testObj,
          name: "testObjName",
          methodList: ["test"],
          controller: this.webviewController
        })

    }
  }
}
<!DOCTYPE html>
  <html lang="en">
  <head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  </head>
  <body>
  <a href="xxx">跳转</a>
  </body>
  </html>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进