eolas/zk/Basics_of_web_components.md

40 lines
989 B
Markdown
Raw Normal View History

2023-01-24 14:01:07 +00:00
---
2024-06-15 11:00:03 +01:00
tags: []
2023-01-24 14:01:07 +00:00
---
# Basics of Web Components
Web Components are custom HTML elements like those we create with frameworks
like React and Angular but which are native to HTML and the DOM and therefore do
not require any special compilation or libraries.
2023-01-24 14:01:07 +00:00
- Designed to be interoperable with normal HTML
- Designed to be interoperable with component frameworks like React
- Designed to be highly modular and reusable
- Utilise the shadow DOM which is like the virtual DOM but native to the browser
and invocable through plain JavaScript. A bit like an iFrame within the
"light" DOM and helps greatly with style-scoping.
2023-01-24 14:01:07 +00:00
## Example of composing a web component:
```js
// MyComponent.js
class MyComponent extends HTMLElement {
connectedCallback() {
this.innerHTML = `<h1>Hello world</h1>`;
}
}
customElements.define("my-component", MyComponent);
``;
```
```html
<!-- index.html -->
<my-component></my-component>
```
## Resources
2024-02-17 11:57:44 +00:00
[A complete introdution to Web Components]()