1# ArkWeb_ComponentAPI 2<!--Kit: ArkWeb--> 3<!--Subsystem: Web--> 4<!--Owner: @yp99ustc; @aohui; @zourongchun--> 5<!--Designer: @LongLie; @yaomingliu; @zhufenghao--> 6<!--Tester: @ghiker--> 7<!--Adviser: @HelloCrease--> 8 9## 概述 10 11Component相关的Native API结构体。 12 13**起始版本:** 12 14 15**相关模块:** [Web](capi-web.md) 16 17**所在头文件:** [arkweb_type.h](capi-arkweb-type-h.md) 18 19## 汇总 20 21### 成员变量 22 23| 名称 | 描述 | 24| -- | -- | 25| size_t size | 结构体的大小。 | 26 27 28### 成员函数 29 30| 名称 | 描述 | 31| ------------------------------------------------------------ | ------------------------------------------------------------ | 32| [void (\*onControllerAttached)(const char* webTag, ArkWeb_OnComponentCallback callback, void* userData)](#oncontrollerattached) | 当Controller成功绑定到Web组件时触发该回调。 | 33| [void (\*onPageBegin)(const char* webTag, ArkWeb_OnComponentCallback callback, void* userData)](#onpagebegin) | 网页开始加载时触发该回调,且只在主frame触发,iframe或者frameset的内容加载时不会触发此回调。 | 34| [void (\*onPageEnd)(const char* webTag, ArkWeb_OnComponentCallback callback, void* userData)](#onpageend) | 网页加载完成时触发该回调,且只在主frame触发,iframe或者frameset的内容加载时不会触发此回调。 | 35| [void (\*onDestroy)(const char* webTag, ArkWeb_OnComponentCallback callback, void* userData)](#ondestroy) | 当前Web组件销毁时触发该回调。 | 36 37## 成员函数说明 38 39### onControllerAttached() 40 41``` 42void (*onControllerAttached)(const char* webTag, ArkWeb_OnComponentCallback callback, void* userData) 43``` 44 45**描述:** 46 47当Controller成功绑定到Web组件时触发该回调。 48 49**参数:** 50 51| 参数项 | 描述 | 52| -- | -- | 53| const char* webTag | Web组件名称。 | 54| ArkWeb_OnComponentCallback callback | onControllerAttached的回调函数。 | 55| void* userData | 用户自定义数据。 | 56 57### onPageBegin() 58 59``` 60void (*onPageBegin)(const char* webTag, ArkWeb_OnComponentCallback callback, void* userData) 61``` 62 63**描述:** 64 65网页开始加载时触发该回调,且只在主frame触发,iframe或者frameset的内容加载时不会触发此回调。 66 67**参数:** 68 69| 参数项 | 描述 | 70| -- | -- | 71| const char* webTag | Web组件名称。 | 72| ArkWeb_OnComponentCallback callback | onPageBegin的回调函数。 | 73| void* userData | 用户自定义数据。 | 74 75### onPageEnd() 76 77``` 78void (*onPageEnd)(const char* webTag, ArkWeb_OnComponentCallback callback, void* userData) 79``` 80 81**描述:** 82 83网页加载完成时触发该回调,且只在主frame触发,iframe或者frameset的内容加载时不会触发此回调。 84 85**参数:** 86 87| 参数项 | 描述 | 88| -- | -- | 89| const char* webTag | Web组件名称。 | 90| ArkWeb_OnComponentCallback callback | onPageEnd的回调函数。 | 91| void* userData | 用户自定义数据。 | 92 93### onDestroy() 94 95``` 96void (*onDestroy)(const char* webTag, ArkWeb_OnComponentCallback callback, void* userData) 97``` 98 99**描述:** 100 101当前Web组件销毁时触发该回调。 102 103**参数:** 104 105| 参数项 | 描述 | 106| -- | -- | 107| const char* webTag | Web组件名称。 | 108| ArkWeb_OnComponentCallback callback | onDestroy的回调函数。 | 109| void* userData | 用户自定义数据。 | 110 111