1e41f4b71Sopenharmony_ci# web 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci>**NOTE** 4e41f4b71Sopenharmony_ci> 5e41f4b71Sopenharmony_ci>This component is supported since API version 6. Updates will be marked with a superscript to indicate their earliest API version. 6e41f4b71Sopenharmony_ci 7e41f4b71Sopenharmony_ciThe **\<web>** component displays web page content. 8e41f4b71Sopenharmony_ci 9e41f4b71Sopenharmony_ci## Required Permissions 10e41f4b71Sopenharmony_ciohos.permission.INTERNET, required only for accessing online web pages. 11e41f4b71Sopenharmony_ci 12e41f4b71Sopenharmony_ci## Constraints 13e41f4b71Sopenharmony_ciThe **\<web>** component does not follow the transition animation. A page allows only one **\<web>** component. 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ci## Child Components 16e41f4b71Sopenharmony_ciNot supported 17e41f4b71Sopenharmony_ci 18e41f4b71Sopenharmony_ci## Attributes 19e41f4b71Sopenharmony_ci 20e41f4b71Sopenharmony_ci| Name| Type| Default Value| Mandatory| Description| 21e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | -------- | 22e41f4b71Sopenharmony_ci| src | string | - | No |Address of the web page to be displayed. The domain name of the website must compile with the HTTPS protocol and have received an ICP license.| 23e41f4b71Sopenharmony_ci| id | string | - | No | Unique ID of the component. | 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ci 26e41f4b71Sopenharmony_ci## Styles 27e41f4b71Sopenharmony_ciUniversal style settings are not supported. 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci## Events 30e41f4b71Sopenharmony_ciThe following events are supported. 31e41f4b71Sopenharmony_ci 32e41f4b71Sopenharmony_ci| Name| Parameter| Description| 33e41f4b71Sopenharmony_ci| -------- | -------- | -------- | 34e41f4b71Sopenharmony_ci| pagestart | {url: string} | Triggered when web page loading starts.| 35e41f4b71Sopenharmony_ci| pagefinish | {url: string} | Triggered when web page loading is completed. | 36e41f4b71Sopenharmony_ci| error | {url: string, errorCode: number, description: string} | Triggered when an error occurs during web page loading or opening. | 37e41f4b71Sopenharmony_ci 38e41f4b71Sopenharmony_ci## Methods 39e41f4b71Sopenharmony_ciThe following methods are supported. 40e41f4b71Sopenharmony_ci 41e41f4b71Sopenharmony_ci| Name| Parameter| Description| 42e41f4b71Sopenharmony_ci| -------- | -------- | -------- | 43e41f4b71Sopenharmony_ci| reload | - | Reloads a page.| 44e41f4b71Sopenharmony_ci 45e41f4b71Sopenharmony_ci## Example 46e41f4b71Sopenharmony_ci```html 47e41f4b71Sopenharmony_ci<!-- xxx.hml --> 48e41f4b71Sopenharmony_ci<div style="height: 500px; width: 500px; flex-direction: column;"> 49e41f4b71Sopenharmony_ci <button onclick="reloadWeb">click to reload</button> 50e41f4b71Sopenharmony_ci <web src="www.example.com" id="web" onpagestart="pageStart" onpagefinish="pageFinish" on:error="pageError"></web> 51e41f4b71Sopenharmony_ci</div> 52e41f4b71Sopenharmony_ci``` 53e41f4b71Sopenharmony_ci 54e41f4b71Sopenharmony_ci```js 55e41f4b71Sopenharmony_ci// xxx.js 56e41f4b71Sopenharmony_ciexport default { 57e41f4b71Sopenharmony_ci reloadWeb() { 58e41f4b71Sopenharmony_ci this.$element('web').reload() 59e41f4b71Sopenharmony_ci }, 60e41f4b71Sopenharmony_ci 61e41f4b71Sopenharmony_ci pageStart: function(e) { 62e41f4b71Sopenharmony_ci console.info('web pageStart: ' + e.url) 63e41f4b71Sopenharmony_ci }, 64e41f4b71Sopenharmony_ci 65e41f4b71Sopenharmony_ci pageFinish: function(e) { 66e41f4b71Sopenharmony_ci console.info('web pageFinish: ' + e.url) 67e41f4b71Sopenharmony_ci }, 68e41f4b71Sopenharmony_ci 69e41f4b71Sopenharmony_ci pageError: function(e) { 70e41f4b71Sopenharmony_ci console.info('web pageError url: ' + e.url) 71e41f4b71Sopenharmony_ci console.info('web pageError errorCode: ' + e.errorCode) 72e41f4b71Sopenharmony_ci console.info('web pageError description: ' + e.description) 73e41f4b71Sopenharmony_ci } 74e41f4b71Sopenharmony_ci} 75e41f4b71Sopenharmony_ci``` 76