• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Functions
2<!--Kit: ArkWeb-->
3<!--Subsystem: Web-->
4<!--Owner: @zourongchun-->
5<!--Designer: @zhufenghao-->
6<!--Tester: @ghiker-->
7<!--Adviser: @HelloCrease-->
8
9> **说明:**
10>
11> - 本模块首批接口从API version 9开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
12>
13> - 示例效果请以真机运行为准,当前DevEco Studio预览器不支持。
14
15## 导入模块
16
17```ts
18import { webview } from '@kit.ArkWeb';
19```
20
21## webview.once
22
23once(type: string, callback: Callback\<void\>): void
24
25订阅一次指定类型Web事件的回调,Web事件的类型目前仅支持"webInited",在Web引擎初始化完成时触发。
26
27当应用中开始加载第一个Web组件时,Web引擎初始化,且后续再在同一应用中继续加载其他Web组件时不会再触发once接口。当应用销毁最后一个Web组件时,若再加载第一个Web组件,应用重新进入Web引擎初始化流程。
28
29**系统能力:** SystemCapability.Web.Webview.Core
30
31**参数:**
32
33| 参数名  | 类型              | 必填 | 说明                  |
34| ------- | ---------------- | ---- | -------------------- |
35| type     | string          | 是   | Web事件的类型,目前支持:"webInited"(Web初始化完成)。      |
36| callback | Callback\<void\> | 是   | 所订阅的回调函数。 |
37
38**错误码:**
39
40以下错误码的详细介绍请参见[webview错误码](errorcode-webview.md)。
41
42| 错误码ID | 错误信息                  |
43| -------- | ----------------------- |
44| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.   |
45
46**示例:**
47
48```ts
49// xxx.ets
50import { webview } from '@kit.ArkWeb';
51
52webview.once("webInited", () => {
53  console.log("configCookieSync");
54  webview.WebCookieManager.configCookieSync("https://www.example.com", "a=b");
55})
56
57@Entry
58@Component
59struct WebComponent {
60  controller: webview.WebviewController = new webview.WebviewController();
61
62  build() {
63    Column() {
64      Web({ src: 'www.example.com', controller: this.controller })
65    }
66  }
67}
68```