From 37d1c03678f4660dc2316b4a49996879679bcbc6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9C=B1=E8=BF=9B=E7=A6=84?= Date: Tue, 3 Nov 2020 20:49:20 +0800 Subject: [PATCH] Web Components --- .../前端杂烩/web-components/input_range.jpg | Bin 0 -> 17761 bytes images/前端杂烩/web-components/shadow_dom.jpg | Bin 0 -> 19678 bytes .../前端杂烩/web-components/组件template.jpg | Bin 0 -> 48519 bytes source/_posts/前端杂烩/Web_Components.md | 92 ++++++++++++++++++ 4 files changed, 92 insertions(+) create mode 100644 images/前端杂烩/web-components/input_range.jpg create mode 100644 images/前端杂烩/web-components/shadow_dom.jpg create mode 100644 images/前端杂烩/web-components/组件template.jpg create mode 100644 source/_posts/前端杂烩/Web_Components.md diff --git a/images/前端杂烩/web-components/input_range.jpg b/images/前端杂烩/web-components/input_range.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4e32baa0bd73839f4b936bbc4634557aa53d006f GIT binary patch literal 17761 zcmeIYWn7!zmM`d&>}?(6e(KVNs$no;ts_^i$icH zxc~W`nYriu@0=I+&S%c6J3G&Q_3S5meb-)V?Pd4B@0S3?s){O#05mi-!25?E;C>b$ z4?utP=&$EtU_3mSIGC6i7?^n2*jP9OcmxFac=-5)kDm||J|=mLk55cNOhQUVPEJlh zL`g+KM)ib@ob0bZK|_D|1_Kip6BCz=5TB6j|9ag21d!kW%F#~H(Vhbyk)WZIpxt)? z7y$q@%m-@!BKY42+M@>=v9NJ)@$erOz=#2l(9qEzVW9s-^~36bhxY&s63i#h_+_z3 zwal@fyO0S4$LHWM$yK$JYmXf=zqD`-!NsGXq@t!_VP#|I;1m=R77-N_mw&CGsHCi- zs-vr?Z}860$kNK%#?}sG@8<5|>E-R?`|(p~Sa`(e$b`hNNy#ax-_mmP@(T)!ic3nX zYieP2@cM?vj?S*`p5DIxf$@pSDa7>eKQqfK$kny=jm@p?Bh>N9>Dl?k<<(!f&;aQF z2J3$z``>VpJm7kSfq{;J{TD8@M_vyTodg5(89&w&SuJdH7t-ef!8l}c@i|rPxJ)m# z56LZD$M7ha1(#Wl{(|;5WdCQtLjFt0{ui*n4LV94(X@ zLQvZX5sUBEzY-dl0m?T@-zyo7n?Lp}2v}M=ndi(Ht3D6LQL{6Dv-C3l=PBDgpqwi? zn|nt!r5e__RWhM{ve^TLwOoO71_P2AFOiJ5DE4b^nd2Ur>s14DqzRY$VQU#hWU`1l zOL{iUbfkx^sh_T=xwJPp$$|grzSLJI?=tm|#z%Y~_GtV%ErW_?UVoO17yR;iLfpYX z`4`>ePbHGaX?w8@8MRu#S<6xHk_zL@@`a7m+yAs%!GbrXY<<|$7PL603SmCJPqVE& zJ7T~s@?Dn}huxc{o+)dJwO~nxs9z)kQj3@zH+g(V3$kfU7B(DP=NF#RrKO^Kzwhut z1N&88_^0x(`fZ0Y!?;N1%DJrY)c*`FC}1g5xWkE_!mq^Q@OIVtXRd;NJYjqEzJ#WP z(p&K}DbC)m)Mhb|`FEbMcn^?=OFnQYA*%k&bvW^Pglv2tHcx|}OYh5F5bD?!S`RHB z9*tMIy~|$r>HYhu##MLT10*f)0j¥!E^qCXGI&qYD5}wLX_$x|YGX5C_W;EzX)O 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 literal 0 HcmV?d00001 diff --git a/images/前端杂烩/web-components/组件template.jpg b/images/前端杂烩/web-components/组件template.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c1f716961673daf58924a17dd61eafaffc58f63d GIT binary patch literal 48519 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 + +### 基本用法 +```javascript +class UserInfo extends HTMLElement { + constructor() { + super() + var p1 = document.createElement('p') + p1.innerText = 'UserName: Sookie' + this.appendChild(p1) + var p2 = document.createElement('p') + p2.innerText = 'E-mail: colorfulsweet@gmail.com' + this.appendChild(p2) + } +} +window.customElements.define('user-info', UserInfo) +``` +这里的构造器内部执行的事情就是生成一个DOM树 +`customElements.define`表示声明一个自定义组件 +这样在页面中直接使用自定义标签``就可以使用该组件了 + +#### 组件模板 +但是如果组件内DOM结构复杂,上面的写法还是有些过于繁琐了 +于是我们可以在页面内声明一个模板 +```html + +``` +```javascript +class UserInfo extends HTMLElement { + constructor() { + super() + var templateElem = document.getElementById('userInfo') + var content = templateElem.content.cloneNode(true) + this.appendChild(content) + } +} +window.customElements.define('user-info', UserInfo); +``` + +![组件template](/images/前端杂烩/web-components/组件template.jpg) + +### shadow DOM +独立封装的一段html代码块,其中包含的html标签、CSS样式、js行为都可以隔离、隐藏起来 +它就是为组件封装而生的特性,父子组件之间不会互相干扰 + +其实浏览器本身就有一些内置的shadow DOM +需要打开F12的设置当中的**Show user agent shadow DOM** +就可以看到诸如``的内部结构了 +![input range](/images/前端杂烩/web-components/input_range.jpg) + +可以把它看做浏览器封装的一个组件 +如果要把我们的组件也封装为这样的一个结构(虽然可以看到组件中的结构,但是内外隔离,外部无法对内部的DOM进行操作) +可以使用如下的方式 + +```javascript +class UserInfo extends HTMLElement { + constructor() { + super() + var shadow = this.attachShadow( { mode: 'closed' } ) + var templateElem = document.getElementById('userInfo') + var content = templateElem.content.cloneNode(true) + shadow.appendChild(content) + } +} +window.customElements.define('user-info', UserInfo) +``` +![shadow DOM](/images/前端杂烩/web-components/shadow_dom.jpg) +此时在组件内部定义的样式就只应用在该组件内,不会对外部造成影响了 + +### 组件传参 +接收传参的方式就是获取DOM上的属性 +```javascript +var templateElem = document.getElementById('userInfo') +var content = templateElem.content.cloneNode(true) +content.querySelector('#name').innerText = this.getAttribute('name') +shadow.appendChild(content) +``` \ No newline at end of file