[Flutter翻译]VSCode的快捷键,扩展和设置的Flutter开发

1,375 阅读9分钟

本文由 简悦SimpRead 转码,原文地址 codewithandrea.com

一个精心策划的流行的VSCode快捷方式、扩展和设置列表,以加快您的Flutter开发......。

VSCode是一个用于Flutter开发的优秀IDE。

在你完成了基本设置步骤之后,你能做的最好的事情就是定制它以提高你的工作流程。

因此,在这篇文章中,我将向你展示我在日常的Flutter开发中使用的所有快捷方式扩展、**设置。

准备好了吗?我们开始吧!

VSCode Shortcuts for Flutter Development

YouTube上已经有很多关于VSCode快捷方式的优秀视频,我将在最后链接最好的视频。

但现在,这里有一个我最喜欢的短名单。

1.快速修复

  • MacOS: CMD+..
  • Windows: CTRL+.

在编辑器的任何地方使用它来获得一个上下文的代码动作列表。

你可以用它来包装提取删除部件等。

image.png(快速修复的例子:包裹一个小部件)

或者在需要时导入文件。

image.png (快速修复示例:导入一个文件)

或者从一个类的现有属性中创建一个构造函数(甚至是所有的数据类方法)。

image.png (快速修复示例:为最终字段创建一个构造函数)

2.显示命令调色板

  • MacOS:CMD+Shift+P
  • Windows: CTRL+Shift+P

这将弹出一个搜索框,你可以看到所有最近使用的命令,并输入搜索新的命令。

image.png (Show the command palette)

3.按名称搜索文件

  • MacOS:CMD+P
  • Windows: CTRL+P.

这对打开你项目中的任何文件都是很好的,不用离开键盘。

image.png (按名称搜索文件)

4. Dart: Add Dependencies

首先,打开命令调色板,输入 "Dart: Add Dependency "或 "Dart: Add Dev Dependency"。

image.png (在pubspec.yaml中添加一个Dart依赖项)

然后它将显示一个可搜索的软件包列表,这些软件包在pub.dev上可用。

image.png (搜索pub.dev上可用的软件包)

一旦你选择了一个依赖项,它将被添加到你的pubspec.yaml文件中并自动安装。

5. Flutter & Dart snippets

Dart和Flutter插件包括许多片段,您可以用它们来快速添加常见的Flutter小工具。

你可能已经熟悉了这些。

  • stless: 插入一个 "无状态部件"(StatelessWidget)。
  • stful: 插入一个 "有状态的小部件"(StatefulWidget)。
  • stanim: 插入一个带有 "AnimationController "的StatefulWidget

image.png (在 "stanim "片段中,插入一个带有AnimationController的StatefulWidget)

这些都很好,因为它们为你生成了所有的模板代码,而你所要做的就是为你的部件命名。

image.png (为 "stanim "片段生成的模板)

但你也可以用代码段来生成常见的代码块,如if/else、for循环、函数定义等。

image.png (插入if/else语句的Dart片段)

image.png (生成的if/else语句)

要查看所有可用的Dart片段,查看此文件

如果您想更进一步,您可以安装Awesome Flutter Snippets扩展,它提供许多其他有用的片段。

6.键盘快捷键列表

  • MacOS:CMD+K CMD+S
  • Windows:CTRL+K CTRL+S

VSCode有大量的快捷方式。如果你想看到它们,并自定义键绑定,这是一个使用的方法。

image.png (显示所有的键盘快捷方式)

VSCode Extensions for Flutter Development

使用正确的扩展将为您节省大量的时间,并给您带来的超能力。这些是我最喜欢的。

1.Dart数据类生成器

在创建模型类时,你经常需要诸如copyWith()toString()toJson()fromJson()toMap()fromMap()==hashCode等方法。

这很繁琐,也很容易出错。

相反,使用Dart数据类生成器来为你做这些工作要好得多:

image.png (使用快速修复快捷方式来生成数据类)

image.png (生成的数据类代码)

特别是当你有很多属性的模型类时,这可以极大地节省时间!

在这里下载。

注意:还有一个替代方案叫做Json to Dart Model,它是相当可配置的,也可以利用代码生成库,如FreezedJson Serializable

2. Flutter Riverpod Snippets

如果你使用Riverpod,你很快就会厌倦用手输入所有的提供者和消费者。

通过使用Robert Brunhage的Flutter Riverpod Snippets扩展,这项工作变得更加容易:

image.png (创建无状态消费者的Riverpod片段)

image.png (Generated ConsumerWidget boilerplate)

下载和文件在这里。

你是否喜欢Flutter Bloc而不是Riverpod?那么bloc extension就能满足你的要求。👍

3.错误镜头

你想知道你在打字时是否会犯错?

Error Lens扩展提高了对错误、警告和其他语言诊断的高亮显示,我发现它有很大的帮助:

image.png (Error lens extension in action)

在此下载:

  • Error Lens(在你输入时获得任何有关错误的反馈:超级有用)

4.Better Comments

通过突出显示警报、注释、TODO等来改进你的代码注释。

image.png (使用Better Comments扩展的高亮注释)

在这里下载。

5. Remove comments

当你创建一个新的Flutter项目时,这对删除所有默认的注释相当有用。

image.png (用Remove Comments扩展删除所有单行注释)

在这里下载。

6. Advanced New File

创建文件的通常方法是在侧边栏中选择你想要的文件夹,然后点击 "新建文件"。

这很慢,因为它迫使你使用鼠标。而且对于大项目来说,找到正确的文件夹可能是一个挑战。

高级新文件扩展让你在工作区的任何地方创建文件,只需使用你的键盘。

你可以从命令调色板上运行它。

image.png (选择高级新文件扩展)

然后,该扩展将使用模式匹配来帮助你找到你需要的文件夹,当你输入

image.png (高级新文件:文件夹选择)

最后,输入所选文件夹中的文件名。

image.png (高级新文件:选择文件名)

结果,扩展程序将在正确的地方创建一个空文件,并为你打开它。

image.png (高级新文件:创建的文件)

在这里下载。

7. GitHub Copilot

GitHub Copilot是一个人工智能对程序员,它在你输入时建议行的完成和整个函数体。

image.png (GitHub Copilot在运行)

虽然它并不总是正确的,但到目前为止,它为我节省了大量的时间,这让我感到很惊讶

它帮助我编写了文档,甚至为我的新课程编写了一些登陆页面的副本! 🤯

image.png (使用GitHub Copilot编写文档)

在这里下载。

8. 德古拉官方主题(可选)

当然,你可以自由选择你最喜欢的主题(只要你使用黑暗模式😉)。

虽然这是我的最爱。

9. Firebase Explorer

如果你想在不离开VSCode的情况下看到你所有的Firebase项目、Firestore数据、云函数等等,这个是为你准备的。

image.png (Firebase explorer panel)

在这里下载。

使用REST API的有用扩展

如果您的Flutter应用程序连接到一些REST APIs,这些扩展也将是有用的。

  • Rest Client: 发送HTTP请求并直接在Visual Studio Code中查看响应。
  • Thunder Client: 是Postman的一个很好的替代品,可以在VSCode中管理所有REST API调用。
  • Live Server:为静态和动态页面启动一个具有实时重载功能的本地开发服务器。

用于Flutter开发的VSCode设置

除了所有伟大的快捷方式和扩展,还有一些Flutter特有的设置将对您有很大的帮助!

这些可以通过打开**首选项:打开设置(JSON)**的命令调色板。

image.png (Preferences: 通过命令调色板打开设置)

我觉得最有用的是修复所有错误保存时格式化代码的选项。

1.保存时修复所有错误

我相信你一定对linter一遍又一遍地告诉你要使用const感到厌烦。

image.png (由于缺少const构造函数而出现inter警告)

好吧,与其手工修复所有这些警告,不如在你的设置文件中添加这个。

"editor.codeActionsOnSave": {
  "source.fixAll": true
}

当你保存时,所有的const错误(以及许多其他的错误)都会消失!

2.保存时的格式

在创建声明式布局时,我们经常会出现不平衡的代码或很长的行。

image.png (有长行的示例代码)

为了解决这个问题,我们要做的就是在正确的地方加上所有的逗号,然后保存文件。

image.png (保存文件后的格式化代码)

要想在保存时启用格式化,请在设置中添加以下内容。

{
   "editor.formatOnSave": true
}

3.括号对着色

最近一个版本的VSCode引入了高性能的括号对着色--这项功能在Flutter中特别有用。

你所要做的就是启用它。

{
  "editor.bracketPairColorization.enabled": true
}

然后你就可以享受所有的彩色括号了。

image.png (括号对着色的操作)

更多的细节在这里。

4.预览Flutter UI指南

另一个我很喜欢的设置叫做previewFlutterUiGuides,可以像这样启用。

{
  "dart.previewFlutterUiGuides": true
}

有了这个,编辑器会在我们的小部件旁边显示一些UI指南。

image.png (Preview Flutter UI Guides in action)

我的settings.json文件

请随意抓取我自己的设置,并根据你的需要进行定制。

{
    "security.workspace.trust.enabled": false,
    "[dart]": {
        "editor.codeActionsOnSave": {
            "source.fixAll": true
        },
        "editor.rulers": [
            80
        ],
        "editor.selectionHighlight": false,
        "editor.suggest.snippetsPreventQuickSuggestions": false,
        "editor.suggestSelection": "first",
        "editor.tabCompletion": "onlySnippets",
        "editor.wordBasedSuggestions": false,
    },
    "dart.warnWhenEditingFilesOutsideWorkspace": false,
    "window.zoomLevel": 1,
    "workbench.colorTheme": "Dracula",
    "editor.bracketPairColorization.enabled": true,
    "editor.inlineSuggest.enabled": true,
    "editor.formatOnSave": true
}

你可能想知道为什么我在2022年仍然使用80个字符的行。好吧,这主要是为了演示的目的,因为我在1080p上录制所有的视频,字体很大。

奖励:飞镖修复

你是否曾经回到一个你已经一两年没有碰过的Flutter项目,发现一堆废弃的警告?(我在看着你,FlatButtonRaisedButton!)

不要担心,因为你不需要手工修复它们。

相反,你只需要在终端上运行dart fix

dart fix --dry-run # preview of the proposed changes
dart fix --apply # apply the changes

更多信息在这个页面

关于IntelliJ / Android Studio?

很高兴你这么问。我不久前已经写了一篇关于它的文章。

结语

我希望以上所有的快捷方式、扩展和设置都能提高你的工作效率

当然,还有很多关于VSCode的技巧和窍门你可以学习。

为此,我推荐Fireship.io的这个视频。

如果你想更深入地了解,你可以查看这个页面,它包含了一个最受欢迎的VSCode视频的精选集。

编码愉快!


www.deepl.com 翻译