Code Actions 是 VSCode 提供的智能上下文感知功能,支持快速修复、重构、代码生成和转换,由语言服务器动态提供,通过 Ctrl+/Cmd+.、灯泡图标或右键触发,依赖扩展与配置。

Code Actions(代码操作)是 VSCode 提供的一种智能、上下文感知的快速修复与重构功能,它会在你编辑代码时自动识别潜在问题或优化机会,并在光标悬停、按下 Ctrl+.(Windows/Linux)或 Cmd+.(macOS)时弹出建议菜单,帮你一键完成常见任务。
它能做什么?
Code Actions 不是固定命令,而是由语言服务器(如 TypeScript Server、Pylance、Rust Analyzer 等)动态提供的、与当前代码位置强相关的操作。常见类型包括:
- 快速修复(Quick Fix):比如为未定义变量添加导入语句、补全缺失的 return 语句、修正拼写错误的函数名
- 重构(Refactor):如“提取为常量”“提取为函数”“内联变量”“重命名符号(含跨文件)”
- 生成代码(Generate):比如为类自动生成构造函数、getter/setter、toString() 方法,或为 switch 补全所有 case 分支
- 转换(Convert):例如将 var 改为 const/let、将普通函数转为箭头函数、在 TypeScript 中切换接口/类型别名
怎么触发和使用?
最常用方式是把光标放在有波浪线提示(错误/警告/建议)的代码上,然后:
- 按 Ctrl+.(Windows/Linux)或 Cmd+.(macOS),直接唤出操作列表
- 右键 → “Quick Fix…” 或 “Refactor…”
- 点击编辑器左侧出现的灯泡图标 ?(需开启
"editor.lightbulb.enabled": true)
选中某项后回车即可执行,多数操作会实时预览修改效果,支持撤销(Ctrl+Z)。
技术上面应用了三层结构,AJAX框架,URL重写等基础的开发。并用了动软的代码生成器及数据访问类,加进了一些自己用到的小功能,算是整理了一些自己的操作类。系统设计上面说不出用什么模式,大体设计是后台分两级分类,设置好一级之后,再设置二级并选择栏目类型,如内容,列表,上传文件,新窗口等。这样就可以生成无限多个二级分类,也就是网站栏目。对于扩展性来说,如果有新的需求可以直接加一个栏目类型并新加功能操作
哪些语言支持?支持程度取决于什么?
只要安装了对应语言的官方或高质量扩展(如 @vscode/typescript-language-features、ms-python.python、rust-lang.rust-analyzer),就能获得丰富的 Code Actions。支持深度取决于:
- 语言服务器是否实现了相关能力(如提供
codeActionProvider) - VSCode 版本是否匹配(新特性通常需较新版本)
- 工作区配置是否启用(例如
"typescript.preferences.includePackageJsonAutoImports"会影响 import 补全行为)
可以自定义或扩展吗?
用户不能直接编写 Code Action,但可以通过以下方式增强体验:
- 安装支持更多操作的扩展(如 esbenp.prettier-vscode、bradlc.vscode-tailwindcss 提供样式相关操作)
- 在
settings.json中配置触发时机,例如:
"editor.codeActionsOnSave": { "source.organizeImports": true, "source.fixAll": true } - 用插件 API 开发扩展(面向开发者):通过注册
CodeActionProvider提供自定义操作
基本上就这些 —— 它不是炫技功能,而是把日常“该做但懒得做”的小动作,变成一次按键的事。









