护士0代码做小程序|被看不见的bug虐到崩溃!我终于摸透微信的坑了💥
上集咱们把界面磨得漂漂亮亮,小程序终于“颜值在线”了!这集来聊最要命的环节——怎么让代码从“能看”变“能跑稳”!我跟AI搭子死磕半天,差点被看不见的敌人搞疯……
😱 报错惊魂:看不见的敌人最致命
“微信开发者工具又报错了!”
我盯着控制台那堆密密麻麻的红字,已经数不清是第几次崩溃了!而且我连“控制台”是什么都是刚学会的——之前以为报错就是弹个友好提示窗,没想到是直接给你甩一堆看不懂的代码红字😭
这里必须先曝光一个隐形杀手:微信开发者工具的基础库版本!我们一直用的是标注“灰度中”的测试版3.16.1。这意味着什么?哪怕你的代码完全正确,页面也可能因为基础库本身的bug抽风渲染异常!对于我们这种“口述式写代码”的纯新手来说,这简直是致命打击——我根本分不清是自己样式写错了,还是基础库在搞鬼!

有次我改完结果页条形图的宽度绑定,刷新一看——两个bar全是零宽度,完全不动!我以为是百分比算错了,反复检查JS逻辑,甚至去掉Math.round直接传浮点数,还是没用!折腾半小时差点哭出来,最后才发现:是基础库3.16.1对style内联动态绑定的解析有时序问题!切到稳定版3.15.3,一模一样的代码——居然动了!

那种感觉就像:被一个看不见的对手暴打一顿,打完了才发现对方藏在系统设置里!🤬
🐛 顽固bug追杀:我和AI搭子的破案实录
有个报错我至今难忘:
VM1921 WAServiceMainContext.js:1TypeError: Cannot read property 'type' of undefined
它反复出现,还随机发作!有时刷新就好,有时怎么刷都不行!更诡异的是,控制台明明显示“计算结果: ENFP”——计分逻辑跑通了,数据也写进globalData了,结果页就是拿不到!
我拉着DeepSeek + Cloud Code一起排查:
1️⃣ 怀疑广告组件:我在结果页加了微信广告占位ID,会不会是广告加载超时阻塞渲染?全部删掉——报错依然存在!排除!
2️⃣ 怀疑globalData作用域:检查navigateTo的URL、数据传递逻辑——没问题!把result.js精简到只剩getApp()一行——还是随机报错!
3️⃣ 终极线索:require文件过大!DeepSeek翻烂微信小程序文档后提出:require()是同步加载的,如果文件过大,主线程会被阻塞,可能导致全局数据还没写完就被访问!
我赶紧去看当时的mbti.js——好家伙,接近400行!20道题目、计分逻辑、16种人格全量描述全塞在一个文件里,一个文件干了所有活!
解决方案出炉:拆文件!题目和计分逻辑留在mbti.js(224行),人格描述独立成type-descriptions.js(172行)。测试页只加载mbti.js,结果页只加载type-descriptions.js,各司其职互不干扰!

改完第一次刷新——报错没了!第二次——没了!第三次——还是没了!😭
总结血泪教训:微信小程序里,绝对绝对不要把所有东西塞进一个require文件!
不过拆文件时又出岔子了!旧版mbti.js里藏着大量“代码尸体”——之前改来改去留下的注释代码。DeepSeek删旧内容时不够干净,留下一段孤立的方法调用,我一点保存——直接报“Missing semicolon”,整个项目白屏!
我当时心跳直接漏了一拍!还好DeepSeek精准定位到残留代码,删掉后编译终于通过,页面恢复正常!那瞬间我突然懂了:做小程序就像当护士,每一步都可能踩坑,但关键是——别慌!找到问题,解决问题,往前走!
这给了我一个重要启发:AI编程助手的瓶颈不是“它不知道”,而是“它不知道该告诉你什么”。人类的价值不是比AI更快找到答案,而是在正确的时机问出正确的问题!别只会问“这里哪里错了”,要学会问“还有什么可能?”
📝 事后复盘:AI不是万能的,但人类的提问是
这个bug困扰了我们将近半天,从怀疑广告组件到排查基础库版本,从精简页面到定位require机制——每一步都走得很艰难,但没有一步是无用的!
DeepSeek其实知道require是同步加载的(它读过文档),但它不会第一次就提出这个方向——它需要我在反复失败后追问:“还有什么我们没考虑到的可能性?”,它才会去翻更深层的文档!
💌 写在最后:我居然真的做出来了!
说是三天,其实是被护士工作撕碎的三天——白天上班、值夜班、补觉,每次只能挤碎片时间做一点。如果给我整块时间,大概一天半就能跑通,但护士哪有整块时间啊!
这三天,我从夜班间隙、补觉前后、周末碎片里抠时间:
✍️ 212行WXML + 210行WXSS + 80行核心逻辑 + 172行人格数据
🎨 16张AI头像 + 6轮UI迭代 🔧 换了3个基础库版本 + 无数次debug + 一次差点放弃
但当代码终于稳稳跑起来的那一刻,我真的哭了——这是我人生第一个微信小程序!一切都值得!😭
🎁 福利时间
全部资料公开分享:
📂 完整项目代码结构
一个能直接跑起来的微信小程序项目,包含:
1.pages/index/ — 首页(58 行 WXML + 193 行 WXSS)
2.pages/test/ — 答题页(40 行 WXML + 145 行 WXSS + 80 行 JS)
3.pages/result/ — 结果页(84 行 WXML + 210 行 WXSS + 60 行 JS)
4.utils/mbti.js — 20 道测试题 + 计分算法(224 行)
5.utils/type-descriptions.js — 16 种人格完整描述(172 行)
images/avatars/ — 16 张风格统一的 AI 头像 PNG
📝20道测试题原文
覆盖 E/I、S/N、T/F、J/P 四个维度的完整题库,可直接用于任何 MBTI 测试场景。
📖 16种人格解析文案
每种人格含:类型名称、一句话概括、5 个优点、4 个缺点、职业方向、恋爱关系建议、关键词标签。共 172 行,15000+ 字。
🎨 配色方案色值表
上一篇有完整内容。
🔧 Python压缩脚本代码
内容有点多,联系我,我给你哈。
🩺 报错排查全过程
就是这篇文章本身——从基础库版本坑、require 文件过大导致随机报错,到代码尸体残留引发白屏,每一步的排查思路和最终解决方案都记录在案。
想要复刻的小伙伴,评论区喊“想要代码”!或者聊聊你做项目时遇到过的最离谱bug,咱们一起踩坑一起成长!👇
点赞收藏这篇避坑指南,下次做小程序少走10086个弯路!❤️

技术支撑:DeepSeek V4 Pro + 豆包 + kimi
使用软件:微信开发者工具
全程实操:一个护士
38 岁,当了 16 年护士
我没想到自己会在这个年纪,从零开始和 AI 打交道。
很多朋友私信我说,看了我的故事,觉得 “零基础” 做 AI 这件事,好像也没那么遥不可及。 如果你也想看一个临床老护士,怎么用 AI 打破零基础搞不定的魔咒;
如果你也被这种普通人也能试试的感觉打动。
欢迎关注我,我会每周固定更新 2 篇内容,把自己用 AI 搞项目、搞创作的真实经历,慢慢分享给你。 我们一起,在 AI 时代,把 “不可能” 变成 “我做到了”✨