Svelte:那个让社区护士少等半小时的“轻”框架

梅雨季的杭州,空气里能拧出半瓶水。

小夏的指尖在键盘上敲得飞快,键盘缝里卡着半颗上个月给老人测血糖时掉的葡萄糖片,甜得发腻的味混着消毒水的味,飘在服务站半开的窗户边。

之前的随访系统又卡了。

她点下“保存”按钮,屏幕中央的加载圈慢悠悠转了三圈,旁边等着填血压值的张阿婆扶了扶老花镜,忍不住凑过来:“小夏啊,你们这电脑,比我家2010年买的那台老联想还慢哦。”

小夏扯着嘴角笑,指尖把鼠标按得咯吱响。她知道不是电脑的问题——这台2018年配的办公机,开个HIS系统就占了一半内存,之前用Vue重写的随访页面,光框架的运行时代码就有140多KB,哪怕只是弹个输入框,都要在内存里跑一遍虚拟DOM的比对,碰到上午随访高峰,二十份录下来,她得站起来揉三次酸到抬不起来的肩膀。

转三圈的加载动画,比梅雨还磨人

这种磨人的等待,没人当回事。

去年有个大厂的数字化团队来社区做升级,花了二十多万搭了块两米宽的数字孪生大屏,把整个社区的老人健康数据都投在亮闪闪的屏幕上——谁的血压高,谁的血糖不稳,动态的光点在社区地图上跳来跳去,领导来检查的时候,大家都围着大屏拍了好多照片。

可核心的录入页面,还是卡。

小夏说,那大屏除了检查的时候开俩小时,平时连电都舍不得插。毕竟护士要的从来不是墙上的花架子,是点一下就能打开的输入框,是填完数值点保存就能跳转的顺畅,是不用对着老人赔笑说“您再等会儿,电脑又闹脾气了”的松弛。

社区卫生服务站护士录入老人健康随访信息场景
社区卫生服务站护士录入老人健康随访信息场景

改变是在一个普通的周二下午来的。

常来服务站帮忙的计算机系研究生小周,揣着个旧U盘晃进来,说他花了两个周末,把整套随访系统用Svelte重写了。小夏当时还笑,说你这小孩又瞎折腾,之前换了两版系统,不还是卡。

结果她点开新页面的瞬间,愣了三秒。

没有加载圈。

她点下“新增随访”的按钮,输入框“唰”一下就弹出来了,速度快得她都不习惯。之前要等三秒的保存按钮,点下去的瞬间就跳转到了下一条记录。张阿婆在旁边看着,凑过来敲了敲屏幕:“哟,这电脑吃了啥好东西,突然变灵光了?”

没有“带家具出门”的包袱,快是真的快

小周没讲那些拗口的技术术语。他坐在服务站的塑料椅子上,给小夏举了个特别通俗的例子。

之前大家熟的那些前端框架,不管是Vue还是React,本质上都像你只是下楼去买瓶冰可乐,非要把家里的沙发、衣柜、冰箱都扛上一起走,走两步还要停下来数一遍,看看带的东西有没有少——这就是大家常说的虚拟DOM diff过程。哪怕你页面上只有一个输入框,框架也要把整套运行时代码塞进你的浏览器里,占内存,占带宽,碰到老机器,自然就卡。

但Svelte不一样。

它是个编译型的框架,根本不需要把一堆运行时代码塞到用户的浏览器里。在你写好代码打包的那一刻,它就把所有要处理的逻辑都提前算完了,直接生成最精简的原生JavaScript,没有多余的包袱,没有来回比对的开销,就像你出门之前就把要带的东西整理好,只装个放钥匙和零钱的小口袋,轻装上阵,走起来当然快。

Svelte框架无虚拟DOM编译后产物对比示意图
Svelte框架无虚拟DOM编译后产物对比示意图

小夏后来特意看了下打包后的文件大小。之前Vue版本的页面,整个资源包快300KB,新的Svelte版本,满打满算才12KB。

12KB是什么概念?就是在楼道里那种只有2M带宽的弱网环境下,给上门随访的老人扫的二维码页面,都能一秒打开,根本不会出现“二维码加载不出来,请稍后重试”的尴尬。上次她跟着团队去给独居的李爷爷做上门随访,扫了码直接填了上周的睡眠和用药情况,李爷爷拿着手机凑过来,盯着屏幕看了半天:“这东西一点就开,比我孙子给我装的那个广场舞APP快多了。”

被忽略的“轻”,从来都不是小事

说实话,我之前跟着行业报告吹了好几年的前端体验升级。

什么丝滑的3D交互,什么沉浸式的数字孪生界面,什么大模型驱动的智能录入,好像只有这些够“重”、够炫酷的技术,才配叫创新。没人愿意蹲在社区服务站的塑料椅子上,花两个周末,把卡了好几年的旧页面重写一遍。

小周说,他当初选Svelte,根本不是因为它有多火——GitHub上的star数还不到React的零头,也没有大厂在背后砸钱做生态。他就是知道服务站的电脑是什么配置,知道楼道里的网速是什么水平,知道那些等着录随访的老人,根本没耐心对着转三圈的加载动画等下去。

之前有个做前端的朋友听说他用Svelte给社区写系统,还吐槽过,说这框架太小众了,生态不全,以后维护起来麻烦。小周当时没反驳。他知道朋友说的是对的——Svelte确实没有那么多现成的组件库,没有那么多大厂的项目背书,甚至连个像样的商业支持都没有。可那又怎么样呢?当你面对的是内存只有8G的老办公机,是弱网环境下的老年用户,是那些因为页面卡了就着急的老人,那些所谓的生态完善、大厂背书,远不如12KB的轻量包、点一下就弹出来的输入框来得实在。

梅雨季结束那天,太阳从云缝里漏下来,照在服务站窗台上的太阳花上——那是张阿婆上次来的时候,从自家花盆里掐了个枝插进来的,橙红色的花瓣,亮得晃眼睛。小周坐在旁边的椅子上,看着小夏飞快地录完一份随访,页面唰一下跳转到下一条记录,没有转圈,没有卡顿。

他上周刚收到大厂的offer,做元宇宙场景的前端,开的工资是现在社区运维岗的五倍。他犹豫了三天,最后还是把拒信发了出去。

很多人说技术的未来要往天上飞,要做能让人沉浸在虚拟世界里的高级体验,要能承载上亿用户的高并发场景。可总有人得蹲在地上,给那些被快节奏落下的人,做一点不那么炫酷、但足够快的小页面。

哦对,他上周刚给随访页面加了个大字体的开关。

也是用Svelte写的。

因为张阿婆说,之前的字太小,她戴300度的老花镜,都要看半天。

作者|大讲堂

排版|大讲堂

审核|见微

免责声明:市场有风险,选择需谨慎!此文仅供参考,不作买卖依据。如有侵权请联系删除。
文章名称:Svelte:那个让社区护士少等半小时的“轻”框架
文章链接:https://www.lfdjt.com/info_23_25690.html