小程序开发中踩过的那些坑
做了一年多微信小程序,从登录鉴权到分包加载,积累了一口袋的踩坑经验。挑几个印象最深的分享出来,希望能帮后来人省点时间。
1. 登录态失效要静默重试
wx.checkSession 并不总是可靠。更稳妥的做法是:请求遇到 401 时,先静默重新调用 wx.login 换取新 token,再自动重试一次原请求,用户全程无感。
2. 分包页面的 require 相对路径
分包里的页面引用根目录工具时,../../ 的层级经常数错,本地语法检查还查不出来,只有真机运行才报 module is not defined。建议统一在自检脚本里校验相对路径可解析。
3. WXML 里别写 JS 表达式
WXML 不支持 filter()、字符串索引这类 JS 方法。所有派生数据(列表、格式化后的文案)都应该在 JS 里预计算好再 setData。
4. 分页插件要显式注册
后端用 MyBatis-Plus 做分页,如果不注册 MybatisPlusInterceptor,selectPage 会静默退化成查全表——数据量小的时候完全发现不了。
5. 本地调试记得关域名校验
开发者工具访问 127.0.0.1 必须在「详情 → 本地设置」勾选「不校验合法域名」,否则请求全部失败,报错信息还不直观。
坑是踩不完的,但每记录一个,下次就少掉一次坑。