之前的文章中,我们分享过一个新兴的前端框架:Svelte
。还对比了它与 Vue
和 React
不同之处。
今天,我们就接着分享一个专为 Svelte 打造的移动端组件库:STDF
Svelte 是一个新兴的前端框架,组件库不多,今天介绍 STDF
算是不可多得的一个组件库了。
STDF
是一个移动端的 UI 组件库,主要用来开发移动端 web 应用。和我们之前介绍过的许多组件库都不一样,它是基于基于 Svelte 和 Tailwind 开发的。你可以认为这套组件库是专为 Svelte 打造的。
Svelte 简洁语法,主要是让原生 JS 代码有了响应式的能力,而且打包后的 web 应用很小,特别适合开发移动应用。同时,Tailwind 又是一个优雅的 CSS 框架。STDF 是结合两者的优点而打造的高质量组件库。
STDF 作为国人开发的组件库,名字虽然简单,但作者也赋予了一些有意思的寓意:
S 代表 Simple(简单),T 代表 Thin(轻量),D 代表 Design(设计),F 代表 Fast(快速)。
STDF 代表一个使用简单、体积轻量、设计友好、开发快速的组件库。
PS:不知道为什么?了不起总能在 STDF 框架代码行间感受到独特的中国诗人般的浪漫主义🤭~
好啦~ 还是让我们来看看怎么使用这个组件库吧!
STDF 的安装分以下几种情况。
pnpm i stdf -D
# or
npm i stdf -D
pnpm create stdf
# or
npm create stdf@latest
# or
npm init stdf@latest
# or
npx create-stdf@latest
npm create vite@latest
PS:官方网站中,有用 Vite 示例创建工程的案例。*
接着,就可以在项目工程中引入 STDF 的组件进行使用了。
使用示例
比如常见的网络布局。
<script>
import { Grids, Grid, Placeholder } from 'stdf';
</script>
<div class="font-bold px-4 mt-8">使用占位符示例 3﹡4</div>
<Grids cols={4}>
<Grid row="3">
<Placeholder>3﹡1</Placeholder>
</Grid>
<Grid col="3">
<Placeholder>1﹡3</Placeholder>
</Grid>
<Grid row="2">
<Placeholder>2﹡1</Placeholder>
</Grid>
<Grid col="2">
<Placeholder>1﹡2</Placeholder>
</Grid>
<Grid>
<Placeholder>1﹡1</Placeholder>
</Grid>
<Grid>
<Placeholder>1﹡1</Placeholder>
</Grid>
</Grids>
布局效果如下:
再如移动端的导航栏。
<script>
import { NavBar, Icon, Toast } from 'stdf';
const icons = [{ name: 'ri-paint-brush-line', theme: true }, { name: 'ri-share-line' }];
let visible = false;
</script>
<div class="flex flex-col space-y-8 py-8">
<!-- 基础用法 -->
<NavBar title="基础用法" />
<!-- 右侧使用 Remix Icon -->
<NavBar title="右侧使用 Icon" rights={icons1} />
<!-- 点击左侧 -->
<NavBar title="点击左侧" on:clickleft={() => (visible = true)} />
<Toast bind:visible={visible} message="点击了左侧!" />
</div>
这就是移动端常见的导航。
STDF 有一整套的应用组件,就像Element之于VUE,Ant Design 之于React。
更多组件的使用方法,请查看 STDF 官网的文档。文档和代码例子写得很详细易懂。
官方地址 https://stdf.design/
STDF 是基于 Svelte 和 Tailwind 打造的。关于它简单、轻量、快速的特性也源于此。尤其是无运行时,无虚拟 DOM,无烦杂的 CSS 代码,让状态管理简单轻快。编码过程、编译处理、线上运行都快得飞起!
当然,这里也有些小遗憾。由于Svelte 是近年来新兴的一款前端框架,目前生态还不是特别丰富,使用的小伙伴不太多,资料相对少些。另一个问题是,STDF 组件主要用于移动端,面向 C 端用户。因此,对产品的性能、易用性和可用性要求很高,大家花费的的精力必然要多一些。
综合来说:如果追求极致的性能表现,就可以选择 Svelte。如果需要生态完整、主流框架,Vue 或React目前仍是主流选择。
PS:在不完全了解 Svelte的情况下,正式环境谨慎使用!