0

0

您应该随 Web 组件一起发送清单

心靈之曲

心靈之曲

发布时间:2024-11-08 18:36:24

|

605人浏览过

|

来源于dev.to

转载

除了组件之外,自定义元素清单是您可以在库中提供的最重要的东西。

什么是自定义元素清单 (CEM)?

自定义元素清单是一个架构,旨在记录有关自定义元素/web 组件的元数据,包括属性、属性、方法、事件、槽、css 部分和 css 变量。它获取有关组件的所有信息并将其序列化到项目中的单个 json 文件中。

用户为什么需要它?

这种标准化的文档方法为团队如何使用组件库并与之交互释放了巨大的可能性。开发人员可以将其用于文档目的,例如 Adob​​e Spectrum 的 API 文档。

您应该随 Web 组件一起发送清单

团队还可以将它们用于框架、IDE 集成以及 Storybook 等其他工具。

如果您想创建想要与组件一起提供的特定类型或框架集成,这很好,但很难预测所有用户的需求。您可能正在构建要在 Vue.js 环境中使用的组件,但另一个团队可能需要在 React 环境中使用您的组件。团队可以使用 CEM 在本地生成自己的包装器,而不是等待您构建和发布 React 包装器。

最近的一个例子是当我帮助一个团队在 Next.js 应用程序中启动并运行 Shoelace 时。 Shoelace 提供了 React 包装器,但当 Next.js 尝试在服务器端渲染它们时,它们会抛出错误。幸运的是,Shoelace 提供了他们的 CEM,所以我能够使用它来生成 SSR 安全的新包装器。

以下是示例链接:

您应该随 Web 组件一起发送清单

如何创建 CEM?

有一些用于创建 CEM 的工具(Web-Component-Analyzer 和 Lit Labs 有一个实验工具),但我的首选工具是 Custom Elements Manifest Analyzer。

ima.copilot
ima.copilot

腾讯大混元模型推出的智能工作台产品,提供知识库管理、AI问答、智能写作等功能

下载

这是一个不错的选择,原因如下:

  • 支持多种框架
  • 它有一个很棒的插件系统,供开发人员扩展分析器的功能
  • 它不仅易于使用,而且还拥有出色的文档和社区支持

以下是我创建的一些可用插件,可以帮助提高自定义元素的采用率:

  • IDE 集成

    • VS 代码集成
    • JetBrains IDE 集成
  • JS 框架集成

    • 反应包装器
    • Vue.js 类型
    • Solid.js 类型
    • 苗条类型
    • JSX 类型

注意: 这些为预生成的 CEM 提供 CEM 分析器插件和函数。如果您没有使用 CEM 分析器,请不用担心,您仍然可以利用这些。

结论

自定义元素清单是一个很好的工具,可以加速用户采用自定义元素组件库。通过将其作为产品的一部分提供,您可以为消费者提供确保他们在使用自定义元素时满足其需求的方法。

在选择用于创作自定义元素的库或框架时,最好尝试找到一个可以生成 CEM 的库或框架,特别是当您的组件将被其他团队使用时。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

402

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

528

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

306

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

74

2025.09.10

css
css

css是层叠样式表,用来表现HTML或XML等文件样式的计算机语言,不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。php中文网还为大家带来html的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

499

2023.06.15

css居中
css居中

css居中:1、通过“margin: 0 auto; text-align: center”实现水平居中;2、通过“display:flex”实现水平居中;3、通过“display:table-cell”和“margin-left”实现居中。本专题为大家提供css居中的相关的文章、下载、课程内容,供大家免费下载体验。

261

2023.07.27

css如何插入图片
css如何插入图片

cssCSS是层叠样式表(Cascading Style Sheets)的缩写。它是一种用于描述网页或应用程序外观和样式的标记语言。CSS可以控制网页的字体、颜色、布局、大小、背景、边框等方面,使得网页的外观更加美观和易于阅读。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

731

2023.07.28

css超出显示...
css超出显示...

在CSS中,当文本内容超出容器的宽度或高度时,可以使用省略号来表示被隐藏的文本内容。本专题为大家提供css超出显示...的相关文章,相关教程,供大家免费体验。

533

2023.08.01

桌面文件位置介绍
桌面文件位置介绍

本专题整合了桌面文件相关教程,阅读专题下面的文章了解更多内容。

0

2025.12.30

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.7万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 2.7万人学习

CSS教程
CSS教程

共754课时 | 17.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号