WebComponents

Web Components is a suite of different technologies allowing you to create reusable custom elements — with their functionality encapsulated away from the rest of your code — and utilize them in your web apps.

Omi和Webcomponents尝试

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="https://unpkg.com/omi"></script>
</head>

<body>
<script>
const {
WeElement,
h,
render,
define
} = Omi

class Brown extends WeElement {

install() {
this.data = {
liked: false
}
}

render() {
if (this.data.liked) {
return 'hello brown'
}
return h('button', {
onClick: () => {
this.data.liked = true
this.update()
}
}, 'Like')
}
}

define('brown-hello', Brown)

render(h('brown-hello'), 'body')
</script>
</body>

</html>