Sublime Text中如何通过快捷键应用LSP快速修复
Sublime Text中如何通过快捷键应用LSP快速修复
嘿,我来帮你搞定这个问题!先看一下你提供的这段Angular指令代码:
This an example of a angular attribute directive. @HostListener is not imported in the class. import { Directive, ElementRef, HostBinding, Renderer2 } from "@angular/core"; @Directive({ selector: "[appDropdown]", }) export class DropdownDirective { constructor( private readonly elementRef: ElementRef, private readonly renderer2: Renderer2, ) {} @HostBinding("class.open") isOpen = false; @HostListener("click") toggle() { const element = this.elementRef.nativeElement; const isOpen = element.classList.contains("open"); // element.classList.toggle("open", !isOpen); if (isOpen) { this.renderer2.removeClass(element, "open"); return; } this.renderer2.addClass(element, "open"); this.isOpen = !this.isOpen; } }
你提到LSP给出了快速修复选项但不知道用快捷键应用,其实Sublime Text里的LSP插件有很直观的快捷键操作:
第一步:触发快速修复面板
在有问题的代码行(比如你这里@HostListener报错的地方),按下Ctrl+.(Windows/Linux系统)或者Cmd+.(Mac系统),这时候会弹出LSP的快速修复选项列表,里面会包含自动导入@HostListener这类的修复建议。第二步:应用修复
用键盘的上下箭头键选中你想要的修复项,按下回车键就能直接应用这个修复了,比如自动帮你把@HostListener添加到import语句里。
如果默认快捷键没反应,你可以检查一下LSP插件是否已经正确安装并启用。要是想自定义快捷键,也可以这么操作:
打开Sublime的Preferences > Key Bindings,在用户配置里添加类似这样的代码来绑定新的快捷键:
{ "keys": ["ctrl+shift+."], "command": "lsp_quick_fix" }
保存后新的快捷键就生效啦。
备注:内容来源于stack exchange,提问作者user615274
相关产品推荐
相关产品推荐

