Android Studio-Dart代码格式问题

时间:2018-07-18 10:43:52

标签: android-studio dart flutter

我一直在尝试使用Android-Studio的代码格式设置中的不同配置,但到目前为止,结果令人失望(并触发)。

这是reformat code在没有dartfmt工具的情况下所做的操作(注意行94-110): enter image description here

dartfmt做得更好,但是缩进是可怕的(第91-96行),并且似乎没有任何配置可设置: enter image description here

这就是我想要的样子: enter image description here

要实现此目的,我需要更改哪些设置?目前很难读取代码。

3 个答案:

答案 0 :(得分:2)

您无法配置dartfmt。这是自愿的。但是dartfmt使用尾部逗号作为确定换行符的核心。

以下内容:

foo({String foo, String bar}) {}

void main() {
  foo(foo: "Hello", bar: "Hello");
}

在运行dartfmt时将保持不变。

但是只需更改为foo即可调用:

  ...bar: "Hello",);

将其重新格式化为:

foo({String foo, String bar}) {}

void main() {
  foo(
    foo: "Hello",
    bar: "Hello",
  );
}

答案 1 :(得分:1)

为时已晚,但可以提供帮助。

在Android Studio中转到

文件>设置>编辑器>代码样式> Dart

并增加Line Length的值。

答案 2 :(得分:0)

深层嵌套的代码在格式化方面非常具有挑战性,当行中的剩余空间变得太短时,dartformat无法缩进,从而无法更好地格式化其余代码。

最好避免深层嵌套的代码,而是将部件重构为自己的函数/方法,或者如果是Flutter构建方法,则将其重构为小部件。

如果您仍然认为该行为无效,请使用dart-lang / dart_style创建问题,维护者很可能会给出深刻的回答。