• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Interface (BackForwardList)
2<!--Kit: ArkWeb-->
3<!--Subsystem: Web-->
4<!--Owner: @aohui-->
5<!--Designer: @yaomingliu-->
6<!--Tester: @ghiker-->
7<!--Adviser: @HelloCrease-->
8
9当前Webview的历史信息列表。
10
11> **说明:**
12>
13> - 本模块首批接口从API version 9开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
14>
15> - 本Interface首批接口从API version 9开始支持。
16>
17> - 示例效果请以真机运行为准,当前DevEco Studio预览器不支持。
18
19## 导入模块
20
21```ts
22import { webview } from '@kit.ArkWeb';
23```
24
25## 属性
26
27**系统能力:** SystemCapability.Web.Webview.Core
28
29| 名称         | 类型   | 只读 | 可选 | 说明                                                         |
30| ------------ | ------ | ---- | ---- | ------------------------------------------------------------ |
31| currentIndex | number | 否   | 否   | 当前在页面历史列表中的索引。                                 |
32| size         | number | 否   | 否   | 历史列表中索引的数量,最多保存50条,超过时起始记录会被覆盖。 |
33
34## getItemAtIndex
35
36getItemAtIndex(index: number): HistoryItem
37
38获取历史列表中指定索引的历史记录项信息。
39
40**系统能力:** SystemCapability.Web.Webview.Core
41
42**参数:**
43
44| 参数名 | 类型   | 必填 | 说明                   |
45| ------ | ------ | ---- | ---------------------- |
46| index  | number | 是   | 指定历史列表中的索引。 |
47
48**返回值:**
49
50| 类型                        | 说明         |
51| --------------------------- | ------------ |
52| [HistoryItem](./arkts-apis-webview-i.md#historyitem) | 历史记录项。 |
53
54**错误码:**
55
56以下错误码的详细介绍请参见[webview错误码](errorcode-webview.md)。
57
58| 错误码ID | 错误信息                                                |
59| -------- | ------------------------------------------------------ |
60| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed. |
61
62**示例:**
63
64```ts
65// xxx.ets
66import { webview } from '@kit.ArkWeb';
67import { BusinessError } from '@kit.BasicServicesKit';
68import { image } from '@kit.ImageKit';
69
70@Entry
71@Component
72struct WebComponent {
73  controller: webview.WebviewController = new webview.WebviewController();
74  @State icon: image.PixelMap | undefined = undefined;
75
76  build() {
77    Column() {
78      Button('getBackForwardEntries')
79        .onClick(() => {
80          try {
81            let list = this.controller.getBackForwardEntries();
82            let historyItem = list.getItemAtIndex(list.currentIndex);
83            console.info("HistoryItem: " + JSON.stringify(historyItem));
84            this.icon = historyItem.icon;
85          } catch (error) {
86            console.error(`ErrorCode: ${(error as BusinessError).code},  Message: ${(error as BusinessError).message}`);
87          }
88        })
89      Web({ src: 'www.example.com', controller: this.controller })
90    }
91  }
92}
93```