始终_指定_类型
指定类型注释。
此规则从 Dart 2.0 开始可用。
此规则有一个 快速修复 可用。
不兼容规则:avoid_types_on_closure_parameters,omit_local_variable_types,omit_obvious_local_variable_types
详情
#请 指定类型注释。
当指定类型未知并省略类型注释时,避免使用 var
和简写。如果明确知道类型未知,请使用 dynamic
。如果明确想要一个实现了 ==
和 hashCode
的对象,请使用 Object
。
错误
dart
var foo = 10;
final bar = Bar();
const quux = 20;
正确
dart
int foo = 10;
final Bar bar = Bar();
String baz = 'hello';
const int quux = 20;
注意:使用 meta
包中的 @optionalTypeArgs
注释,API 作者可以特殊情况处理其类型需要为动态但声明应被视为可选的类型参数。例如,假设您有一个其类型参数您希望将其视为可选的 Key
对象。使用 @optionalTypeArgs
将如下所示
dart
import 'package:meta/meta.dart';
@optionalTypeArgs
class Key<T> {
...
}
void main() {
Key s = Key(); // OK!
}
用法
#要启用 always_specify_types
规则,请在您的 analysis_options.yaml
文件中将 always_specify_types
添加到linter > rules 下
analysis_options.yaml
yaml
linter:
rules:
- always_specify_types
除非另有说明,否则本网站上的文档反映了 Dart 3.5.3。页面最后更新时间为 2024-07-03。 查看源代码 或 报告问题.