<wa-include>
Includes give you the power to embed external HTML files into the page.
Included files are asynchronously requested using window.fetch()
. Requests are cached, so the
same file can be included multiple times, but only one request will be made.
The included content will be inserted into the <wa-include>
element's default slot so it
can be easily accessed and styled through the light DOM.
<wa-include src="https://shoelace.style/assets/examples/include.html"></wa-include>
When an include file loads successfully, the wa-load
event will be emitted. You can listen for
this event to add custom loading logic to your includes.
If the request fails, the wa-error
event will be emitted. In this case,
event.detail.status
will contain the resulting HTTP status code of the request, e.g. 404 (not
found).
<wa-include src="https://shoelace.style/assets/examples/include.html"></wa-include> <script> const include = document.querySelector('wa-include'); include.addEventListener('wa-load', event => { if (event.eventPhase === Event.AT_TARGET) { console.log('Success'); } }); include.addEventListener('wa-error', event => { if (event.eventPhase === Event.AT_TARGET) { console.log('Error', event.detail.status); } }); </script>
Name | Description | Reflects | |
---|---|---|---|
src src
|
The location of the HTML file to include. Be sure you trust the content you are including as it will
be executed as code and can result in XSS attacks.
Type
string
|
||
mode mode
|
The fetch mode to use.
Type
'cors' | 'no-cors' | 'same-origin'
Default
'cors'
|
||
allowScripts allow-scripts
|
Allows included scripts to be executed. Be sure you trust the content you are including as it will
be executed as code and can result in XSS attacks.
Type
boolean
Default
false
|
Name | Description |
---|---|
wa-load |
Emitted when the included file is loaded. |
wa-error |
Emitted when the included file fails to load due to an error. |
The autoloader is the recommended way to import components. If you prefer to do it manually, use one of the following code snippets.
To manually import this component from the CDN, use the following code.
import 'https://early.webawesome.com/webawesome@3.0.0-alpha.4/dist/components/include/include.js';