@c2n/ 组件
每个c2n网络组件,在一个包c2n为他们出版.
npm install @c2n/components
组件是作为单独的工作空间软件包建在这个寄存器中,但只有这个软件包被发布:它将它们全部捆绑. 每个条目是一个单独的模块,什么条目共享是共同块,所以一个应用程序可以导入三个组件,这三个组件以及它们使用什么. 它的依赖性是捆绑仍然进口的:Lit, @c2n/core, (中文(简体) ), @c2n/theme,图标设置了两个组件和几个组件的第三方库(Shiki,ProseMiror,d3-geo,.
条目
| 导入 | 它给你什么 |
|---|---|
@c2n/components/<name> | 一个组成部分:其类别和类型,并登记其每个要素 |
@c2n/components | 每一个部件,一次登记 |
@c2n/components/react | 每类联合来文 c2-* 标签 |
@c2n/components/vue | 每张伏特模板类型 c2-* 标签 |
@c2n/components/theme.css | 基础主题( C)base.css 财务报告和审定财务报表 tokens.css 单独,如 @c2n/theme(中文(简体) ) |
import '@c2n/components/theme.css'
import '@c2n/components/table'
import '@c2n/components/select'
import type { TableRow } from '@c2n/components/table'
<name> 是该组件的名称 : @c2n/components/text-field 页:1 c2-text-field, (中文(简体) ), @c2n/components/chart 每个图表元素.
首选您所携带的应用程序中的每个组件条目 . 注册自定义元素是一种副作用,所以没有捆绑者可以丢出一个从未使用过的: import '@c2n/components' 将每个组件放入捆绑中。 桶装原型、内部工具和 <script type="module"> 从CDN.
反应和 Vue
// src/c2-elements.d.ts
import '@c2n/components/react' // or '@c2n/components/vue'
这些声明每个标记,并有从元素类键入的道具和事件. 每个框架需要遵循的规则(在第一次渲染前登记各项要素,在服务器交付的React中的kebab-case属性名称 isCustomElement 选项中 框架指南。 。 。 .
未列入
- 图标集.
@c2n/feather-icons, (中文(简体) ),@c2n/phosphor-icons财务报告和审定财务报表@c2n/symbols是一个元素 每个图标( Phosphor 单是 1, 512), 所以它们保持自己的安装 . - 可选引擎.
c2-*-chart使用uplot或者说echarts, (中文(简体) ),c2-code-editor密码密尔和c2-mermaid(与图表输入)c2-markdown与mermaid。它们是可选的对等关系:安装您使用的对等关系.
维持此套件
一揽子组成部分packages/components/*, (中文(简体) ), open-packages/*)是私人工作空间. 这里除了这个读取器, scripts/ 和手写字段 package.json (名称,描述,脚本,.)生成:
npm run build -w packages/tools/framework-types将捆绑的输入写入src/(每个组件包一个条目、桶、反应和Vue声明)、三个样式表和exports, (中文(简体) ),files, (中文(简体) ),customElements, (中文(简体) ),dependencies, (中文(简体) ),peerDependencies财务报告和审定财务报表devDependencies联 合 国package.json。一个新的组件包在下次运行时加入;当承诺的输出停滞时, CI 失败.npm run build -w packages/umbrella(单位:千美元)scripts/bundle.ts) 建设dist/从src/在Vite 中,插入工作空间包,复制其声明dist/types/与@c2n/<name>描述符重写到相对路径,将其表单合并到custom-elements.json。当捆绑导入包时失败package.json未列出.prepack运行它,所以npm pack财务报告和审定财务报表lerna publish总是运送一栋新楼.
npm run type-check -w packages/umbrella 编译捆绑的申报 skipLibCheck 关闭, 即报告两个从桶中输出同名的软件包, 并按类型检查 React 和 Vue 的固定件 test/。 。 。 . test/umbrella.spec.ts 导入浏览器中的枪管,并检查合并清单中的每个标记都登记.