第四回:堆怪梗巧媳妇硬开檀木典藏,追缓存呆码农怒通手机局域网
L 这回手更重,直接把页面拧成檀木典藏版,又往里狂塞新天赋、怪文案和“再抽一次”;Y 晚上被缓存和手机联调折腾得头皮发麻,只好去修本地服务、打通局域网,再顺手补一轮护栏。
以下情节纯属虚构,如有雷同纯属巧合。
开场
到了第四回,L 已经不满足于“能玩”了。
她盯着页面看了一会儿,忽然冒出一句:“还是太像网页。”说完就把电脑拖近了点,开始翻之前那些配色、边框、按钮、字体。翻着翻着,表情越来越像准备拆房重装的人。Y 在旁边只瞥了一眼,就有点不妙的预感。那种预感程序员都懂。不是 bug 要来了。是审美要来了。
“我想要个檀木典藏版。”L 说。
Y 停了一秒:“你这个词听着就很贵。”
L 根本没理他,回头就去找 G 老师,开始讲木头、铜边、像羊皮纸一样的字色,讲得特别认真。什么深褐色底子,什么旧木头上磨出来的亮边,什么看着像藏在掌门密室里好多年的破秘籍。聊顺了。再去找 Kimi。接下来的手法就很粗暴了,不是修,是换皮。大换。
她把页面改得像个柜子
那天下午,`app/index.html` 基本被她掀了一遍。
原来那套黑金星空还在,但已经不够她用了。她想要更实一点的东西,木纹、铜边、像羊皮纸一样的主文字,连标题都换成那种一看就不太现代的字。页面里的数值卡、属性栏、日志区、点一下会亮的按钮,全都重新长了一遍。连暂停按钮都不放过。原来是字。现在直接换成了符号,硬邦邦杵在那儿,像个小机关。
L 一边改,一边还在嘴里念叨。
“这个不像修仙,像后台。”
“这个颜色太干净了。脏一点。”
“这个日志前面的点好。留着。”
Y 听到“脏一点”那句的时候,扭头看了她一眼,没说话。说了也没用。她已经上头了。
光改皮还不够。L 还开始往里面塞东西。塞得很满。
新天赋一口气加了十个,名字也越来越不像正经仙侠。什么“氪金战士”“非酋”“熬夜冠军”“老六”“二哈血统”“恋爱脑”“普信”。她加一个,自己念一个,念到“无效努力”的时候还停下来乐了一下:“这个太准了,必须放进去。”
然后她又嫌抽天赋这件事不够人性。或者说,不够给人希望。于是页面里多了个“再抽一次”。不是无限抽。那样太赖皮。给一次。就一次。像赌场门口故意给你留的最后一枚筹码。
“人总得有个重新投胎的念想吧。”她说。
后面连事件文本也开始挨刀。那些还算规矩的句子,一个个被她改坏了。不是改差,是改得更欠。更像今天的人会笑出来的东西。“飞剑股”“9090 显卡”“三年修仙五年元婴”“天道服务器连接超时”“卡 BUG 刷灵石被开发者抹数据”。她改这种句子的时候特别快,快得像在群里发梗图,根本不带犹豫。
Y 中途拿起手机看了一眼,刚好刷到一句“御剑飞行超速,与前面的仙鹤发生惨烈追尾”。
他沉默了两秒,说:“你现在这个文风,已经从修仙走到交通事故了。”
L 头也不抬:“修仙世界也得有路怒症。”
他被缓存逼急了
真正把 Y 搞烦的,不是这些梗。是缓存。
L 改得太快了。页面一会儿一个样。问题是浏览器有时候根本不配合。她明明刚把按钮颜色换了,手机上一打开,还是旧的。刚把“再抽一次”塞进去,另一台机器上又像没这回事。L 来回刷新了几次,脸就开始黑。
“我明明改了。”
Y 说:“你先别急,我看一眼。”
看了一眼。又看了一眼。
不是页面没改。是服务端和浏览器一起装死。缓存卡在那里,像一块隔夜年糕,硬得要命。L 越刷新越烦,Y 越看越知道今晚跑不掉了。然后他就去改 `serve.sh` 了。
这一改很 Y。先把脚本切到项目根目录启动,再给 URL 后面挂时间戳,硬塞一个 cache bust。还不够。直接让本地静态服务把 `Cache-Control`、`Pragma`、`Expires` 全打上,明摆着告诉浏览器:别装,别存,给我每次都重新拿。
L 站在旁边看他改,问得也很直白:“能不能让我手机看到的,跟电脑是一个东西?”
Y 没抬头:“理论上可以。理论上。”
“你这个语气听起来就不妙。”
“因为我要开始碰 Windows 了。”
后面那一段就有点热闹了。Y 又补了一个给手机访问的脚本,把 WSL 里的服务往局域网里抬,顺手拉 PowerShell 去配端口转发和防火墙。管理员窗口弹出来的时候,L 本能地往后躲了一下。
“这玩意儿看着像要收我电脑。”
“不会。”Y 说,“大概率不会。”
“你这个‘大概率’也很烦。”
但最后还是通了。手机能直接打开。不是截图,不是录屏,是真页面,真按钮,真“再抽一次”。L 拿着手机在客厅里来回走了两步,像在验收新铺好的地砖,一边点一边说:“这个好。这个终于对上了。”
他顺手又补了一圈护栏
手机通了。缓存没那么气人了。事情还没完。
Y 回头再看那一大坨前端,还是头大。不是因为他突然学会前端了。没有这回事。他只是看出来,L 这几天这样改下去,早晚会把某个 DOM 节点改没了,然后整个页面啪一下黑给你看。测试桩再继续乱兜底,后面更难查。反正已经下场了,索性顺手再补一圈护栏。
所以后面又多了些很 Y 的东西。AGENTS 里开始写 DOM 契约,缺节点不能装没看见;测试桩别再偷偷造假节点;表达式别用 `eval` 硬跑;改了页面结构,就得回头看看引擎还能不能找到原来的地方。还有测试。跟着补。
L 那会儿已经不怎么听这些了。她还在另一头继续点页面,继续笑某几个新文案,偶尔抬头丢一句:“暂停那个符号再居中一点。”或者“‘普信’这个词会不会太狠了?算了,不改。”
客厅里那天就是这个样子。L 把游戏越改越像一个会骂人的木头盒子;Y 一边追缓存,一边追手机,一边拿护栏把这个盒子四周先围上。谁都没闲着。