手寫(xiě)基于Web Components組件庫(kù)
2023-08-14 21:13 作者:喝喜酒都覺(jué)得看電視卡 | 我要投稿

一.特點(diǎn):
前端框架層出不窮,組件庫(kù)也是?;?code>Web Components開(kāi)發(fā),能做到跨框架復(fù)用,統(tǒng)一所有情況。
采用
Typescript
開(kāi)發(fā),有聲明和類(lèi)型文件。純?cè)謱?xiě),無(wú)依賴(lài)。
整體項(xiàng)目全量導(dǎo)入不到
100k
,brotli
壓縮后整體組件庫(kù)只有18.90 KiB
,類(lèi)原生,使用上完全可以直接替換原生的標(biāo)簽,更加方便。
二.項(xiàng)目地址
git
地址:https://github.com/chaxus/ran/tree/main/packages/ranuinpm
地址:https://www.npmjs.com/package/ranui
三.文檔
文檔地址:https://chaxus.github.io/ran/src/ranui/
基于
vitepress
搭建,所有組件實(shí)例均可交互
四.使用
1.html
2.vue
3.react
react
渲染組件有一套自己的規(guī)則:https://react.dev/reference/react-dom/components#custom-html-elements
在tsx
中需要注意,react
會(huì)有一個(gè)聲明文件,包含所有原生的html
標(biāo)簽。自定義的組件類(lèi)型必然不在里面,需要擴(kuò)展。
在jsx
中不會(huì)有類(lèi)型問(wèn)題。
4.js
五.開(kāi)發(fā)
MIT協(xié)議,非商業(yè)行為,源碼公開(kāi)
歡迎大家提出各種改進(jìn)建議,issue
和pr
如果有幫助的話,歡迎star