Flutter 正确的颤振/省道格式
我正在处理一些颤振代码。代码将右大括号堆叠在同一行上。此外,当我在VSCode中运行“Format Document”时,它还将大括号堆叠在一行上 像这样(见最后一行) 但是在flatter文档和示例代码中,所有示例都使用以下格式(其中大括号位于单独的行上)Flutter 正确的颤振/省道格式,flutter,dart,visual-studio-code,code-formatting,Flutter,Dart,Visual Studio Code,Code Formatting,我正在处理一些颤振代码。代码将右大括号堆叠在同一行上。此外,当我在VSCode中运行“Format Document”时,它还将大括号堆叠在一行上 像这样(见最后一行) 但是在flatter文档和示例代码中,所有示例都使用以下格式(其中大括号位于单独的行上) 哪一种是正确的格式?此外,“格式化文档”是否使用省道扩展名来获得正确的格式?您也可以通过在大括号之间添加逗号来获得相同的缩进,并点击缩进按钮: VS代码:alt+shift+f Android Studio:ctrl+alt+l 对我来
哪一种是正确的格式?此外,“格式化文档”是否使用省道扩展名来获得正确的格式?您也可以通过在大括号之间添加
逗号来获得相同的缩进,并点击缩进按钮:
- VS代码:
alt+shift+f
- Android Studio:
ctrl+alt+l
对我来说效果非常好:)
添加逗号,如:
onChanged: (s) {
navigation.update();
if (s == '') {
program.name = 'UNNAMED${navigation.programsCounter}';
return;
}
program.name = s.toUpperCase();
},),);
确认后:
onChanged: (s) {
navigation.update();
if (s == '') {
program.name = 'UNNAMED${navigation.programsCounter}';
return;
}
program.name = s.toUpperCase();
},
),
);
可以在大括号的末尾使用逗号(,)。然后,“格式文档”将分隔每个大括号的行。试试这个:
return Container(
width: 200,
child: CupertinoTextField(
maxLength: 10,
textCapitalization: TextCapitalization.characters,
focusNode: focusNode,
decoration: BoxDecoration(
border: Border.all(color: Colors.white.withOpacity(0))),
style: accentTextStyle,
placeholder: "NAME",
textAlign: TextAlign.center,
keyboardAppearance: Brightness.dark,
controller: _textController,
onChanged: (s) {
navigation.update();
if (s == '') {
program.name = 'UNNAMED${navigation.programsCounter}';
return;
}
program.name = s.toUpperCase();
},
),
);
编辑:
好的,您正在寻找合适的方法。如中所述,应使用尾随逗号
为了获得良好的自动格式,我们建议您采用可选的尾随逗号
但这并不能真正回答问题。先生,没有合适的格式。适合你的由你决定。我刚刚添加了如何实现格式良好的代码。另外,我没有收到任何颤振工程师关于格式的消息。他们推荐了我与您共享的解决方案:)干杯,再见:)没有正确的格式,它是由dartfmt项目指定的格式,它是一个固执己见的格式化程序。所以我很好奇VSCode是否在使用这个,以及哪种格式匹配。我想是的。可能是dart扩展,但是如果你添加逗号
,它会以适当的方式格式化它们,以//Container
结尾,类似于注释以获得更多澄清:)好的,你可以查看答案末尾的编辑部分:
onChanged: (s) {
navigation.update();
if (s == '') {
program.name = 'UNNAMED${navigation.programsCounter}';
return;
}
program.name = s.toUpperCase();
},
),
);
return Container(
width: 200,
child: CupertinoTextField(
maxLength: 10,
textCapitalization: TextCapitalization.characters,
focusNode: focusNode,
decoration: BoxDecoration(
border: Border.all(color: Colors.white.withOpacity(0))),
style: accentTextStyle,
placeholder: "NAME",
textAlign: TextAlign.center,
keyboardAppearance: Brightness.dark,
controller: _textController,
onChanged: (s) {
navigation.update();
if (s == '') {
program.name = 'UNNAMED${navigation.programsCounter}';
return;
}
program.name = s.toUpperCase();
},
),
);