control_flow_in_finally
在 'finally' 子句中使用 '{0}'。
描述
#当 finally 子句包含 return、break 或 continue 语句时,分析器会生成此诊断信息。
示例
#以下代码会生成此诊断信息,因为 finally 块内包含 return 语句
dart
int f() {
try {
return 1;
} catch (e) {
print(e);
} finally {
return 0;
}
}常见修复方法
#如果不需要该语句,则将其删除;如果块为空,则删除 finally 子句
dart
int f() {
try {
return 1;
} catch (e) {
print(e);
}
}如果需要该语句,则将其移到 finally 块外部
dart
int f() {
try {
return 1;
} catch (e) {
print(e);
}
return 0;
}