【问题标题】:VS Code Flutter code automatically shrinks to one line after saving file or restarting editorVS Code Flutter 代码在保存文件或重启编辑器后自动收缩到一行
【发布时间】:2022-07-27 18:36:47
【问题描述】:

我喜欢为每个孩子及其组件在单独的行中进行编程,我最近在遇到一些问题后从 Android Studio 迁移到 VS Code,但我注意到在 VS Code 中,在保存文件后(CTRL+ S) 或者重启IDE,它会自动将代码压缩到一行,非常令人沮丧,我该如何解决这个问题?

Before saving

After Saving

【问题讨论】:

    标签: flutter dart visual-studio-code


    【解决方案1】:

    这不是问题,但 Flutter 代码格式化程序就是这样工作的。 Flutter 文档中解释了这种行为:

    Flutter 代码通常涉及构建相当深的树形数据结构,例如在构建方法中。为了获得良好的自动格式化,我们建议您采用可选的尾随逗号。添加尾随逗号的准则很简单:始终在函数、方法和构造函数中的参数列表末尾添加尾随逗号,在这些地方您关心保持您制作的格式。这有助于自动格式化程序为 Flutter 风格的代码插入适量的换行符。

    尽管不推荐,但在 VS Code 中,您可以禁用 Preferences -> Settings -> Text Editor -> Formatting 中的自动代码格式化并取消选中“保存时格式化”复选框。

    Read more about Flutter code formatting.

    【讨论】:

    • 谢谢,我明白了,但为什么格式化程序不像 android studio 中的那样,另外,我看到一个视频,有人使用了一个快捷方式,按照我想要的方式格式化它
    • 不确定您在此处引用的视频,但我认为默认的 Dart/Flutter 格式化程序应该没有什么不同。也许 Android Studio 只是没有在保存时格式化您的文件。
    【解决方案2】:

    如果你想让 Flutter 将你的代码格式化成单独的行,你必须像这样用逗号 (,) 结束参数:

      Text(
        "text",
        style: TextStyle(
          fontSize: 25,
          color: Colors.white,
        ),
      ),
    

    如果您想禁用自动格式化功能,只需在 vscode 设置中禁用Format On Save 选项(在设置搜索框中输入editor.formatOnSave 以查找相关设置)。

    【讨论】:

      【解决方案3】:

      对我来说,我遇到了同样的情况,因为我添加了相关的设置 刚刚注释掉了 dart.lineLength 行

       // "dart.lineLength": 500,
        "[dart]": {
          "editor.defaultFormatter": "Dart-Code.dart-code",
          "editor.formatOnSave": true,
          "editor.formatOnType": true,
          "editor.rulers": [500],
          "editor.selectionHighlight": false,
          "editor.suggest.snippetsPreventQuickSuggestions": false,
          "editor.suggestSelection": "first",
          "editor.tabCompletion": "onlySnippets",
          "editor.wordBasedSuggestions": false,
          "editor.wordWrapColumn": 100000
        }
      

      【讨论】:

        猜你喜欢
        • 2017-06-14
        • 2020-06-22
        • 1970-01-01
        • 2021-03-01
        • 1970-01-01
        • 2021-11-17
        • 2018-06-20
        • 2019-10-27
        • 1970-01-01
        相关资源
        最近更新 更多