Flutter:在VSCode中获取@override列表的快捷方式

30

在使用 VSCode 时,是否有快捷键或其他方式可以获取所有 Flutter @override 方法的列表?


我不熟悉VSCode,但是VSCode使用的DartAnalyzer提供了一些东西。在IntelliJ中,它可以在类的上下文菜单中生成。此外,还有来自VSCode Dart插件维护者的https://github.com/dart-lang/sdk/issues/32677。 - Günter Zöchbauer
好的。谢谢。我会等待这个修复。 - boeledi
1
可能不是正确的解决方案,但是可以绕过去。您可以使用 Ctrl + 鼠标左键单击 打开该类,然后您可以查看所有可以重写的函数。我只需复制粘贴该函数并更改函数体即可。 - Arnold Parge
6个回答

8

虽然目前尚未实现查看完整列表的功能(如评论中链接的问题所示),但只要您输入了任何内容,就可以在完成列表中看到可重写方法;即使只有一个字符。如果需要,您可以使用Ctrl+Space强制打开完成列表。


5

如果您知道想要重写的方法的首字母,只需输入该字母,vs code将立即提供一个以该字母开头的超类所有方法列表。在选择后,它会完整地补充该方法-带有注释和说明,非常好用。 例如,在超类中,我有一个带有签名的方法

Future<void> init() async {}

在子类编辑器中,我只需键入“i”,vs code会弹出init()等函数列表,选择后写入以下内容:

  @override
  Future<void> init() {
    // TODO: implement init
    return super.init();
  }

2
你可以在vscode中按下ctrl+.,然后在Windows中插入override方法。

enter image description here

只需点击显示“创建一个缺失的重写”或者重写列表的选项。

1
我正在使用版本1.49(最新版本)。在您想要实现的类名中,按下“Ctrl + .”键,将出现“创建n个缺失的覆盖项”。

enter image description here


5
好的,但是如何覆盖一个不是必须覆盖的方法,因为它并没有丢失?请注意不要改变原意。 - alireza easazade

1
在Mac上,如果你按下"option(alt) + .",你将会得到一个可以重写的方法列表。

enter image description here


0
只需输入关键字"overide",然后按下空格键。VSCode将显示出覆盖方法的列表。

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接