自定义标签是Web Components的一个子集,通过自定义标签可以实现任意你想要实现的效果,是一件很酷的事情。让你不用React、Vue、Angular这样的框架就能实现。
文中通过示例,使用ES6语法,介绍了如何写一个自定义的标签。在自定义标签的对象中,比如可以通过observedAttributes定义组件内可观察变化的属性,还有该自定义标签的声明周期函数:connectedCallback(插入到DOM之后触发)、disconnectedCallback(从DOM中被移除后触发)、attributeChangedCallback(属性发生变化之后触发)等。丰富的API可以让开发者实现更复杂的应用系统更加的方便。
需要注意的是,自定义标签的兼容性不是很好,不建议在生产环境使用。各浏览器的支持程度如下:
- Chrome/Opera 支持
- Firefox 63中默认支持(beta)
- Safari 支持程度较低
- Edge 还在开发中