Web组件

更新时间:2024-05-06 11:45

Web组件是一套不同的技术,允许开发者创建可复用的自定义元素 (它们的功能封装在代码之外)并且在web应用中使用它们。

历史

历史Alex Russell在2011年的Fronteers大会上首次提出Web组件。Google在2013年发布了一个基于Web组件的程序库“Polymer”。

封装性在面向对象编程方法中,封装是指,一种将抽象性函数接口的实现细节部分包装、隐藏起来的方法。同时,它也是一种防止外界调用端,去访问对象内部实现细节的手段,这个手段是由编程语言本身来提供的。这两个概念有一些不同,但通常被混合使用。封装被视为是面向对象的四项原则之一。适当的封装,可以将对象使用接口的程序实现部分隐藏起来,不让用户看到,同时确保用户无法任意更改对象内部的重要数据。它可以让代码更容易理解与维护,也加强了代码的安全性。

互操作性互操作性作为一种特性,它指的是不同的系统和组织机构之间相互合作,协同工作(即互操作)的能力。技术系统工程设计(technical systems engineering)方面常常会用到这条术语;另外,广义地说,还会考虑到那些影响系统间性能(system to system performance)的社会、政治和组织机构因素。另外,Interop还是几个年度网络产品贸易展览会的名称(英文:annual networking product trade shows)。

组成

Web组件由四大部分组成,可单独或组合使用。

Custom element(自定义元素)一组 JavaScript API,允许定义 custom elements 及其行为,然后可以在用户界面中按照需要使用它们。

Shadow DOM(影子 DOM):一组 JavaScript API,用于将封装的“影子”DOM 树附加到元素(与主文档 DOM 分开呈现)并控制其关联的功能。通过这种方式,可以保持元素的功能私有,这样它们就可以被脚本化和样式化,而不用担心与文档的其他部分发生冲突。

HTML template(HTML模板):