codegeex 插件需处于 ready 状态才能触发生成,安装后须重启 vscode 或点击“重新加载”,并确认右下角状态栏图标显示 ready;光标必须位于 page({}) 内部才可正确生成小程序逻辑;snippets 仅支持正则替换,不能替代 ai 生成业务逻辑;生成后须手动校验 fetch、全局变量、this.setdata 及 encodeuricomponent。

CodeGeeX 插件必须处于 Ready 状态才能触发生成
插件没激活,Ctrl+I 按下后什么都不会出现——这是最常被忽略的前提。安装完插件后必须重启 VSCode 或点击“重新加载”,并确认右下角状态栏有 CodeGeeX 图标且显示 Ready。如果图标灰掉或显示 Connecting...,说明模型服务未就绪,此时所有指令都会失败。
常见错误现象包括:按下 Ctrl+I 后无输入框、输入指令回车后无响应、生成代码中混入 fetch() 或 globalData 等非法调用。这些基本都源于插件未真正就绪,而非提示词问题。
在 Page({}) 内部用祈使句触发微信小程序逻辑生成
光标必须落在 Page({}) 的大括号内部,不能在外部、不能在注释里、也不能在 Component({}) 中——否则 AI 无法推断上下文,容易生成错位的生命周期函数或漏掉 this. 绑定。
- 正确指令示例:
生成 onShow 函数,调用 wx.login 获取 code,再 wx.request 发送到 /api/login,成功后 this.setData({ userInfo: res.data }) - 避免模糊表述:
写个登录逻辑容易漏掉setData或错误使用wx.getUserInfo - 必须限定基础库版本:
适配微信基础库 2.28.0+,不使用 wx.getUserInfo,否则可能生成已废弃 API
Snippets 正则替换能批量处理命名格式,但不能替代逻辑生成
${TM_SELECTED_TEXT/(pattern)/(replacement)/g} 这类正则片段适合做文本变形,比如把 userName 转成 user-name 或 USER_NAME,但它不理解业务语义,也无法生成 setData 调用或请求链路。
典型误用场景是试图用 Snippets 生成带条件判断的请求逻辑——它只能静态替换字符串,不能根据上下文插入 try-catch、嵌套回调或错误降级处理。这类任务必须交给 CodeGeeX 这类 AI 插件,Snippets 只负责收尾标准化,比如统一日志前缀或字段命名风格。
生成后必须手动校验三处关键点
AI 输出不是最终代码,尤其在小程序环境里,以下三点不检查几乎必出 runtime error:
- 是否含
fetch()或XMLHttpRequest:小程序只认wx.request - 是否在
Page外声明变量(如let cache = {}):小程序不允许全局 mutable 变量 -
setData是否写成this.setData:漏掉this.会导致静默失败,控制台无报错但界面不更新
最容易被忽略的是 encodeURIComponent ——AI 通常不会自动包裹 URL 参数,但微信接口对特殊字符敏感,漏掉这一步会导致 400 Bad Request,且错误信息里不提示具体哪段参数有问题。











