手写基于Web Components组件库
2023-08-14 21:13 作者:喝喜酒都觉得看电视卡 | 我要投稿

一.特点:
前端框架层出不穷,组件库也是。基于
Web Components
开发,能做到跨框架复用,统一所有情况。采用
Typescript
开发,有声明和类型文件。纯原生手写,无依赖。
整体项目全量导入不到
100k
,brotli
压缩后整体组件库只有18.90 KiB
,类原生,使用上完全可以直接替换原生的标签,更加方便。
二.项目地址
git
地址:https://github.com/chaxus/ran/tree/main/packages/ranuinpm
地址:https://www.npmjs.com/package/ranui
三.文档
文档地址:https://chaxus.github.io/ran/src/ranui/
基于
vitepress
搭建,所有组件实例均可交互
四.使用
1.html
2.vue
3.react
react
渲染组件有一套自己的规则:https://react.dev/reference/react-dom/components#custom-html-elements
在tsx
中需要注意,react
会有一个声明文件,包含所有原生的html
标签。自定义的组件类型必然不在里面,需要扩展。
在jsx
中不会有类型问题。
4.js
五.开发
MIT协议,非商业行为,源码公开
欢迎大家提出各种改进建议,issue
和pr
如果有帮助的话,欢迎star