用途:为 VS Code 扩展开发提供 vscode.window.show*Message 方法的使用规范,适用于处理 showInformationMessage、showWarningMessage、showErrorMessage 的场景。
主要能力与规则:
- 直接调用 vscode.window.show*Message,新代码不要使用旧版 NotificationService。
- 所有消息字符串与按钮标签必须使用 nls.localize(),禁止字符串字面量或未含 nls 的模板字面量,该要求由 no-vscode-message-literals ESLint 规则强制。新增消息需在包的 i18n.ts 中添加键值。
- 必须处理返回值:字符串按钮返回 Thenable<string | undefined>,MessageItem 按钮返回 Thenable<MessageItem | undefined>,用户关闭对话框时返回 undefined。
- 模态选项使用 { modal: true, detail: ... },detail 仅在 modal 为 true 时显示;VS Code 会自动为模态对话框添加 Cancel 按钮,不要显式添加取消按钮。
- 与 Effect 集成:需要等待用户响应时用 Effect.promise();无需等待的即发即弃消息用 Effect.sync() 并配合 void。
- 消息类型选择:showInformationMessage 用于成功与提示,showWarningMessage 用于警告与可恢复错误,showErrorMessage 用于错误与失败。
使用方式:按上述规则编写调用,提交前运行 npm run lint。
限制:资料未提供该技能的安装命令、收费、平台支持范围等额外信息。