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```