Visual Studio Code 1.53(2021 年 1 月)更新全解:工作台、调试、Notebook 与扩展 API 深度指南
文档教程【免费下载链接】vscode-docsPublic documentation for Visual Studio Code项目地址https://gitcode.com/gh_mirrors/vs/vscode-docs点击查看免费下载本文全面解读 VS Code 2021 年 1 月发布的 1.53 版本对应仓库文档 release-notes/v1_53.md覆盖工作台与编辑器的新配置项、调试与 JavaScript 调试器新能力、Notebook 大纲导航、Git 新命令以及面向扩展作者的稳定 API 与提案 API。文章不仅完整继承发布说明中的配置参数与代码示例还结合本仓库的 用户界面文档、代码片段文档、语言配置指南 等文档帮助你理解每个特性背后的实现细节与实战用法。版本背景1.53 是 2021 年 1 月的稳定版发布随后的 1.53.1、1.53.2 更新修复了若干安全与稳定性问题。文中所有设置项、命令与 API 均以该版本为基准后续版本可能存在差异。工作台标签页、编辑器与搜索模式全面升级标签页换行Wrap Tabs当同时打开大量编辑器标签时传统标签栏会收缩成一条可横向滚动的滚动条。1.53 新增设置workbench.editor.wrapTabs让标签像文本一样自动换行铺满多行区域无需滚动即可一览全部标签workbench.editor.wrapTabs: true当可用空间过小、无法容纳换行布局时换行会临时关闭回退到带滚动条的旧体验。注意若不想让换行后的标签无限变宽可配合设置workbench.editor.tabSizing: shrink让标签按比例收缩。该特性在 用户界面文档 中有持续介绍换行标签布局会让编辑器标签铺满编辑器区域上方的多行并可与 自定义标签文案workbench.editor.customLabels.patterns、标签定位workbench.editor.openPositioning等既有能力组合使用。标签装饰Tab Decorations为了让文件状态在标签上更直观1.53 新增两个设置分别控制标签的“颜色装饰”与“徽章装饰”workbench.editor.decorations.colors用颜色标记标签例如文件有错误时标签显示红色、有警告时显示黄色/绿色与编辑器内的问题提示状态联动。workbench.editor.decorations.badges用文字徽章标记标签例如 Git 已修改的文件显示M徽章。Open Editors 视图默认隐藏为了让 Explorer 视图开箱即用更清爽1.53 起Open Editors打开的编辑器视图对新用户默认隐藏不影响既有用户。该视图提供的功能当前打开的文件列表与标签栏等区域重叠因此官方选择隐藏它以简化界面。如需恢复可在 Explorer 视图标题区域的上下文菜单中手动切换其可见性。新增确认对话框为防止误操作导致数据丢失1.53 在两类场景下新增确认对话框文件操作仍在进行时尝试退出 VS Code从 Explorer 执行“破坏性撤销”操作destructive undo时。新设置 workbench.editor.enablePreviewFromCodeNavigationVS Code 的“预览编辑器”preview editor机制此前由workbench.editor.enablePreview与workbench.editor.enablePreviewFromQuickOpen控制详见 用户界面文档的预览模式章节。上一版本把“代码导航打开文件”如Go to Definition默认改为以普通编辑器打开1.53 新增设置workbench.editor.enablePreviewFromCodeNavigation让你显式选择是否让代码导航打开的文件进入预览模式workbench.editor.enablePreviewFromCodeNavigation: trueEmmet 性能与功能改进Emmet 扩展在 HTML/CSS 文件中响应大幅提速并升级到最新 Emmet 引擎支持倒计时countdown等新语法。官方演示在一个大型 HTML 文件中展开带倒计时的 Emmet 片段性能提升约 20 倍。改进的重构参与者 UIRefactor Participants扩展可以参与文件的创建、移动、重命名、删除等操作例如重命名 Java 文件时同步重命名其 public class。1.53 将这类由扩展发起的附带修改统一收敛到一个预览对话框你可以逐个接受、跳过或预览扩展即将做出的其他更改避免重构被悄悄执行。“使用其他编辑器打开”支持替代打开方式执行Reopen Editor With命令后按住Ctrl选择目标编辑器可在当前编辑器旁边打开新编辑器与 Quick Open 行为一致在对话框中按Right Arrow右箭头可在后台打开编辑器。Issue 报告登录 GitHub 后可从HelpReport Issue直接创建 issue简化反馈流程。默认搜索模式search.mode 设置过去要改变“搜索入口使用哪种 UI”只能靠修改键绑定曲线救国。1.53 引入search.mode设置统一控制Search: Find in Files命令以及 Explorer 中Find in Folder...、Find in Workspace上下文菜单的搜索承载方式取值行为view默认行为使用侧边栏/面板中的搜索视图newEditor在全新的 Search Editor 中搜索existingEditor复用已打开的 Search Editor若不存在则新建一个如果此前为了切换默认搜索 UI 而自定义过键绑定现在可以删除这些键绑定改用该设置。Search Editor 的更多细节如search.action.openNewEditor、search.searchEditor.singleClickBehaviour、search.searchEditor.defaultNumberOfContextLines等命令与设置可参考 搜索文档。新的文件与文件夹图标New File与New Folder图标已更新与 VS Code 的 图标库 保持一致编辑器新片段变量与命名转换命令新片段变量UUID 与 RELATIVE_FILEPATH代码片段Snippet新增两个变量完整变量清单见 用户自定义片段文档UUID插入一个 Version 4 UUIDRELATIVE_FILEPATH插入当前文件相对于已打开工作区/文件夹的路径此前只有TM_FILEPATH绝对路径、TM_DIRECTORY目录、TM_FILENAME文件名等。示例片段会输出形如let someId foo/test.js/c13d226f-1932-40e2-9fd9-10198c219e33的内容// 使用 UUID 与 RELATIVE_FILEPATH 的示例片段 { scope: javascript, prefix: newVars, body: let someId ${RELATIVE_FILEPATH}/${UUID}$0 }片段变量使用$name或${name:default}语法变量未定义时插入默认值或空字符串还可配合CLIPBOARD剪贴板内容、RANDOM6 位随机十进制数字、CURRENT_*日期时间等变量组合使用。转换为蛇形命名Transform to Snake Case新增命令Transform to Snake Case可将选中文本转换为 snake case例如myVariable→my_variable配合已有的Transform to Uppercase/Lowercase等命令让文本大小写/命名风格转换更完整。调试多会话、断点条件编辑与 JavaScript 调试器同一启动配置可并发启动多次1.53 移除了“每个 launch 配置只能启动一个调试会话”的限制。现在可以反复点击调试配置下拉菜单中的绿色运行按钮并发启动任意数量的会话每个后续会话名称末尾会自动追加编号以便区分。若需要“一次启动多个不同配置”可改用 compound 启动配置在launch.json中通过compounds数组把多个配置组合起来并行启动。断点条件编辑Condition Editing继续推进 BREAKPOINTS断点视图中的断点编辑统一工作函数断点function breakpoints新增条件condition与命中次数hit count编辑支持。至此源码断点、函数断点、异常断点与日志点logpoints均可编辑条件。可以从断点上下文菜单或新的内联Edit Condition操作发起条件编辑。注意虽然新 UI 支持编辑所有断点类型但条件与命中次数只有在调试扩展真正支持时才会生效。例如 1.53 中内置 JavaScript 调试器为异常断点新增了条件支持而当时已知的调试器尚不支持函数断点的条件与命中次数。运行/调试前提示保存未命名文件针对新手“忘记保存文件就运行”的常见问题由于大多数调试器无法调试未命名untitled文件PowerShell 除外1.53 起在活动编辑器组存在未保存的未命名文件时运行或调试前会提示用户先保存。断点区域小组件语法着色断点编辑器区域小组件breakpoint editor zone widget现在遵循底层编辑器的语言模式进行语法着色调试控制台操作移入次级菜单为了让调试视图中的配置下拉菜单有更多空间Debug Console操作被移入次级菜单...。由于调试会话启动时控制台会自动打开单独点击该操作的需求本就不多。扩展调试日志改进调试扩展时对consoleAPI 的调用现在会经由内置 JavaScript 调试器处理能够更丰富地呈现复杂对象例如带 source map 的调用栈。JavaScript 调试器完整变更列表见 vscode-js-debug 的 changelog仓库侧对应文档为 remote-release-notes/v1_53.md 中的远程开发说明。条件异常断点Conditional Exception BreakpointsJavaScript 调试器支持条件异常断点。可勾选“捕获异常时暂停”并输入条件表达式断点暂停时error变量包含当前抛出的异常例如条件err.message.includes(my error)只会在异常信息匹配时触发暂停。调试 worker_threadsNode.jsworker_threads工作线程现在可直接调试无需任何额外配置或代码改动集成终端流控与 PowerShell 7 发现流控机制Flow Control终端进程与前端之间的连接新增流控机制当前端需要追赶输出时会暂停终端进程。此前在远程连接中使用终端会出现稳定性/性能问题。该机制当前仅作用于 VS Code 的远程remoting场景本地窗口会在调整终端进程启动位置后启用。更好的 PowerShell 7 发现PowerShell 7 可安装于 Windows、macOS 与 Linux。1.53 起若在 Windows 上安装了 PowerShell 7VS Code 默认使用它作为默认 shell未安装时继续使用 Windows PowerShell。Select Default Shell选择默认 ShellQuick Pick 会枚举所有已安装的 PowerShell 版本包括 MSI 安装、Microsoft Store 安装等。注意macOS 与 Linux 的默认 shell 发现与枚举不受影响它们分别使用 OS 默认与/etc/shells。terminal.integrated.shell.windows设置仍然生效。语言特性Markdown 预览自动更新图片Markdown 预览现在会在磁盘上的嵌入式图片发生变化时自动更新——无论是你用外部程序编辑图片还是通过源代码控制操作例如切换分支导致的图片变化。这是本仓库 Markdown 相关文档 所描述的预览体验的重要补充。Notebook大纲、面包屑与差异编辑器改进大纲与面包屑Notebook 单元格现在会出现在大纲Outline面板与面包屑Breadcrumbs中便于总览与快速导航两个新设置控制代码单元格是否参与notebook.outline.showCodeCells大纲是否包含代码单元格notebook.breadcrumbs.showCodeCells面包屑是否包含代码单元格。这与 Jupyter Notebook 文档 中的描述一致大纲默认只显示 Markdown 标题需要代码单元格时需显式开启对应设置还可使用notebook.outline.showMarkdownHeadersOnly、notebook.outline.showCodeCellSymbols进一步筛选。Notebook 差异编辑器富输出渲染与性能改进Notebook 文档的差异diff编辑器现在支持渲染富输出如表格、图片或 HTML 输出该特性当时在 Insiders 中可用可安装 Jupyter 或 .NET Interactive 扩展预览同时差异编辑器浏览变更时的滚动性能也得到优化。新增单元格工具栏“添加单元格”工具栏改为悬停单元格时出现提升可发现性。源代码管理Git 新命令与新设置Git: Open All Changes 命令命令面板新增Git: Open All Changes...一键打开所有已修改与未跟踪的文件。拉取/同步时对已变基分支的警告当尝试 pull或 sync而当前分支疑似已被 rebase例如已发布的历史被重写时VS Code 会发出警告。新 Git 设置设置说明git.requireGitUserConfig1.51 起提交前强制要求配置用户名或邮箱此设置可关闭该要求git.ignoreRebaseWarning关闭“分支疑似被 rebase 时拉取/同步的警告”git.autofetch自动拉取可额外设为all拉取所有远程remote预览特性Preview Features在打开的编辑器中搜索实验性search.experimental.searchInOpenEditors设置可在 Stable 中启用“在打开的编辑器中搜索”Insiders 默认开启。这是长期高票需求对应 issue #20530。TypeScript 4.2 支持继续为即将发布的 TypeScript 4.2 提供支持编辑器侧改进包括JS Doc 模板现在生成returns已弃用的 DOM API 被标记为弃用新增声明缺失函数的快速修复原生支持语义高亮不再依赖 TypeScript service 插件。可通过安装 TypeScript Nightly 扩展体验 4.2 nightly 构建。新命令Find References to File搭配 TypeScript 4.2新增Find References to File查找文件引用命令可找出某个文件被引用的所有位置触发方式有三种对活动文件执行TypeScript: Find File References命令右键编辑器标签选择Find File References在文件资源管理器中右键文件选择Find File References。远程开发扩展更新远程开发扩展包容器、远程机器、WSL在 1.53 中的亮点详见 远程发布说明恢复重连终端的 UI 状态重新连接后分屏终端的分割尺寸与活动终端选择会被还原连接压缩使用 WebSocket 的permessage-deflate扩展压缩通信官方实测弱网环境下客户端→服务端数据约压缩 10.4 倍、服务端→客户端约 7.7 倍端口属性配置可在设置中为端口配置label、onAutoForwardnotify/silent/openBrowser/ignore、elevateIfNeeded等属性端口号支持数值或范围如3000或30000-40000特权端口检测与自动转发Linux/macOS 下http://localhost:80这类特权端口1024现在可被检测并自动转发容器支持 SSH 密码连接通过 SSH 连接 Docker 时可提示输入密码/口令WSL shell 安装扩展WSL 侧codeCLI 支持--install-extension、--uninstall-extension、--list-extensions可与--force、--show-versions、--category组合且仅作用于远程/ WSL 侧的扩展宿主。扩展开发稳定 API 与新能力扩展指南Extension Guidelines官方发布了一套面向扩展作者的 扩展指南覆盖 UI 最佳实践、通知与状态更新的约定。例如命令面板贡献命令的 Dos 与 DontsProduct Icon Theme API 稳定产品图标主题Product Icon ThemeAPI 转正。主题作者可通过扩展的productIconThemescontribution point 发布替换视图与编辑器中内置图标的主题图标需定义为图标字体中的字形且当前限制为单色详见 产品图标主题指南。用户通过Preferences: Product Icon Theme命令切换。StatusBarItem 背景色 API 稳定StatusBarItem的backgroundColor属性从提案转正。为避免状态栏过于花哨当前仅支持statusBarItem.errorBackground。典型用途是让扩展在状态栏标示错误状态——例如 ESLint 扩展可以用该颜色提醒用户工作区尚未启用 ESLint。新增 CancellationError 类型新增vscode.CancellationError错误类型用于响应CancellationToken被取消或当操作被其执行者取消时抛出。OnEnterRule.previousLineTextOnEnterRule新增previousLineText属性可按回车时上一行的文本决定规则是否命中。综合 语言配置指南一条onEnterRule可同时匹配beforeText必填光标前的文本限于当前行afterText光标后的文本限于当前行previousLineText光标上一行的文本。命中的规则可执行indentnone/indent/outdent/indentOutdent、appendText、removeText等动作。onEnterRules 支持语言配置文件此前onEnterRules只能通过vscode.languages.setLanguageConfigurationAPI 定义现在可直接写在语言配置文件language configuration file即language-configuration.json中例如onEnterRules: [ { beforeText: ^\\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\\s*$, action: { indent: indent } } ]语义令牌命令新增 4 个用于调用语义令牌提供者的命令均以vscode.开头、由扩展内部调用vscode.provideDocumentSemanticTokensLegend参数Urivscode.provideDocumentSemanticTokens参数Urivscode.provideDocumentRangeSemanticTokensLegend参数Urivscode.provideDocumentRangeSemanticTokens两个参数Uri与RangeSecrets API与存储 API 类似新增按扩展隔离的机密存储/读取 API扩展可将敏感信息存入操作系统凭据管理器或密钥库keystore。workspaceContains 激活行为修复修复了workspaceContains激活事件的一个 bug此前当模式仅针对工作区根目录文件时仍会触发对整个工作区的搜索影响启动性能修复后搜索范围被正确收窄。注意部分此前被“误激活”的扩展可能不再被激活。该变更自 1 月初起已在 Insiders 中生效。workspaceContains激活事件的常规用法是打开文件夹且其中存在匹配 glob 模式的文件时激活扩展详见 激活事件参考。更新后的加载图标加载图标更新交互更平滑。Git 扩展 API新增API.onDidPublish事件仓库或分支从 Git 扩展发布时触发新增API.openRepository方法让扩展告知 Git 扩展其他仓库如工作区之外、或嵌套更深的位置API.push方法新增可选force参数API.commit的CommitOptions新增可选requireUserConfig避免强制要求用户名/邮箱。欢迎视图内容链接启用状态viewsWelcome贡献点中指定enablement表达式时表达式求值为 false 的命令链接会渲染为不可用状态。resolveTreeItemresolveTreeItemAPI 现在支持取消cancellation且可用于解析TreeItem的command属性。提案 API提前体验与示例提案 API 变化频繁体验方式固定为三点使用 Insiders 构建、在package.json中声明enableProposedApi: true、将最新版vscode.proposed.d.ts复制到项目源码位置。注意使用提案 API 的扩展无法发布下一版本可能有破坏性变更。Inline Value Provider API内置Show Inline Values显示内联值功能基于 VS Code 核心的通用实现无法通过设置自定义或扩展定制且因不理解源语言可能显示错误值。为此正在设计允许扩展完全或部分替换内置实现的 API1.53 发布了初始提案对应 issue #105690。测试 APITesting正在探索 VS Code 内的测试支持对应 issue #107467首个版本 API 已进入vscode.proposed.d.ts。本迭代聚焦构建 Selfhost Test Provider 与基础 UI测试资源管理器、装订线装饰gutter decorations以及结果 peek 视图。External URI Opener提案的 external URI opener API 允许扩展接管用户在编辑器中点击的 HTTP/HTTPS 链接例如浏览器预览扩展可在 VS Code 内直接打开本地服务器链接。用法为支持的 URL scheme 添加onOpenExternalUri激活事件当前仅http、httpsactivationEvents: [ onOpenExternalUri:http, onOpenExternalUri:https ]在激活逻辑中调用registerExternalUriOpener注册 openervscode.window.registerExternalUriOpener(myExtension.opener, { canOpenExternalUri(uri: vscode.Uri) { // 用户首次选中链接时调用VS Code 需要判断哪些 opener 可用。 if (uri.authority localhost:8080) { // 对该 URI 使用默认优先级VS Code 始终有自带 opener会提示用户选择。 return vscode.ExternalUriOpenerPriority.Default; } // opener 可用但不作为默认 return vscode.ExternalUriOpenerPriority.Option; }, openExternalUri(resolveUri: vscode.Uri) { // 用户选中该 opener 后真正打开 URI。 } }, { schemes: [http, https], label: localize(openTitle, Open URL using My Extension), });之后在编辑器或终端中点击指向localhost:8080的链接时会提示选择打开方式也可通过workbench.externalUriOpeners设置为特定 URI 配置默认 openerworkbench.externalUriOpeners: { localhost:8081: myExtension.opener }协议更新LSP 3.17 与 LSIF 工具Language Server Protocol启动 3.17 版本协议的工作首个提案特性是更详细的补全项标签completion item label。Language Server Index FormatLSIF改进 TypeScript 索引器并扩大开源仓库测试范围主要改进包括宽容索引模式--moniker选项内存占用更高但符号 moniker 计算错误时不至于失败日志文件支持便于定位 moniker 无法正确计算的场景新的 LSIF dump 校验工具lsif-tooling可校验任何工具产出的 dump检查顶点/边的布局与属性、顶点在边引用前已发射、边基数、边的出入类型以及 dump 分区是否正确例如结果分区不会加入已关闭的文档/项目。调试适配器协议DAP变更VariablePresentationHint.kind中的dataBreakpoint值已弃用此前通过检查VariablePresentationHint的kind是否为dataBreakpoint来判断对象是否具有数据断点。但kind一般用于标识对象的实际类型接口、方法、派生类等数据断点跟踪属于 UI 用途应作为attribute声明可与其他属性、kind 并存。因此弃用kind属性中的dataBreakpoint值在attribute属性中新增hasDataBreakpoint值。工程与平台更新性能改进GitHub Actions 与 Azure DevOps Pipelines 基础设施大幅优化构建更快更频繁官方称构建耗时缩短约一半。Electron 11 更新1.53 完成 Electron 11 的捆绑Chromium 87.0.4280.141、Node.js 12.18.3。破坏性变更为使用 Electronx64 Linux 构建镜像升级为 Ubuntu-18.04原生模块的最低 GLIBCXX 要求提升到3.4.22经构建系统调整后回退到 gcc-5 工具链最低要求降至3.4.21。已知可用的 x64 桌面发行版Ubuntu 16.04 及更新Fedora 24 及更新Debian 9 及更新CentOS 8 及更新注意远程开发组件仍使用 GLIBCXX3.4.19支持平台不变。其他发行版可通过安装 gcc-5 及以上工具链规避原生模块的 GLIBCXX 错误但不保证运行时所有组件正常或改用远程开发套件在旧发行版上工作。Apple Silicon Insiders得益于 Electron 11Apple Silicon 支持持续推进。Insiders 的 macOS 下载提供三种变体x64Intel 芯片、arm64Apple Silicon 芯片、universal两者均可原生运行为网站默认下载项。Universal 应用同时打包 x64 与 arm64首次安装下载体积显著增大但简化了向新 Mac 的迁移。官方原计划将 Apple Silicon 构建推送到 Stable但因 macOS Big Sur 11.2 上加载 WASM 模块导致扩展宿主崩溃issue #115646而推迟。Debian 仓库迁移为在单一仓库中支持 x64、ARM 与 ARM 64 位架构仓库迁移至http://packages.microsoft.com/repos/code。VS Code Debian 包会自动将系统迁移到新仓库无需手动操作。Electron 沙箱化进展继续推进窗口启用 Electron 的 sandbox 与 context isolation与后台共享进程的 IPC 从 Node.js socket 改为 Electron 的 MessagePort API新增内部选项启用主窗口的实验性vscode-file协议issue reporter 与进程资源管理器上一版本已使用移除了 VS Code 窗口中更直接的 Node.js API。Trusted Types 合规VS Code 已完成对 W3C Trusted Types 规范的合规改造。文档更新远程开发发布 Dev Containers 入门视频系列8 集演示如何获取、创建与配置基于容器的开发环境。when 子句参考when子句文档独立为 when clause contexts 参考涵盖条件运算符、可用上下文以及扩展贡献菜单/视图时的可见性控制。例如内置调试启动命令的键绑定{ key: f5, command: workbench.action.debug.start, when: debuggersAvailable debugState ! initializing }其中debuggersAvailable表示有合适的调试器扩展可用debugState取值可为inactive、initializing、stopped、running详见 when clause 上下文参考。CodeTour 教学新主题向教育者介绍 CodeTour 扩展可在代码库上制作自定进度的导览帮助学生快速上手新项目与作业。什么是 VS Code 工作区新主题解释单文件夹、多根与未命名工作区的差异。值得关注的修复1.53 修复了一批高影响问题例如修改debug.console.wordWrap不再需要重启触控板鼠标滚动切换标签的横向灵敏度问题终端中 alt-click 链接出现^[[D乱码的问题用户设置中不再包含带默认值的已修改设置调试器输出滚动时的卡顿长文件路径配合自定义编辑器时的“Maximum call stack size exceeded”热退出hot exit时提示用户哪些编辑器未能备份Watch 面板“复制值”支持多选。完整清单见 release-notes/v1_53.md 的 Notable fixes 章节。小结VS Code 1.53 是一次“体验打磨 开发者平台”并重的发布工作台层面新增标签换行、标签装饰、统一搜索模式与预览导航设置调试层面解锁多会话并发与全类型断点条件编辑JavaScript 调试器补齐条件异常断点与worker_threadsNotebook 获得大纲导航与富输出差异渲染而对扩展作者而言Product Icon Theme、StatusBar 背景色、Secrets、previousLineText等一批 API 转正配合 external URI opener、测试等提案 API为生态建设提供了更稳固的底座。若需查阅本文引用的完整原文与配套文档可直接在仓库中浏览 release-notes/v1_53.md 与 remote-release-notes/v1_53.md并参考 用户界面、代码片段、语言配置指南 等主题文档深入了解。赞分享文档教程【免费下载链接】vscode-docsPublic documentation for Visual Studio Code项目地址https://gitcode.com/gh_mirrors/vs/vscode-docs点击查看免费下载相关推荐Visual Studio Code 2020年11月版本1.52全解析工作台、Git、调试与扩展开发新特性Visual Studio Code 2020年11月版本1.52全解析工作台、Git、调试与扩展开发新特性 导读 本文基于 release notes/文档教程Visual Studio Code 1.4 版本深度解读2016 年 7 月编辑器、调试与扩展 API 新特性全解析Visual Studio Code 1.4 版本深度解读2016 年 7 月编辑器、调试与扩展 API 新特性全解析 导读 本文基于 vscode docs文档教程Visual Studio Code 1.362019 年 6 月更新全解析终端、任务、调试与扩展开发新特性Visual Studio Code 1.362019 年 6 月更新全解析终端、任务、调试与扩展开发新特性 本文基于 vscode docs 仓库中的文档教程上一篇ad-creative 技能深度解析Agent 规模化生成与迭代付费广告创意的完整实战指南下一篇Quasar useId Composable 实战指南为组件生成稳定且规避 Hydration 错误的唯一 ID创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考