type_annotate_public_apis
为公共 API 添加类型注解。
详细信息
#建议 为公共 API 添加类型注解。
类型注解是关于如何使用库的重要文档。为公共方法和函数的参数和返回值类型添加注解有助于用户理解 API 的期望和提供的内容。
请注意,如果公共 API 接受 Dart 类型系统无法表达的一系列值,则可以接受不为其指定类型。在这种情况下,隐式的 dynamic
是该 API 正确的类型。
对于库内部的代码(无论是私有的,还是嵌套函数之类的),请在你认为有帮助的地方添加注解,但不要觉得你必须提供它们。
错误示例
dart
install(id, destination) {
// ...
}
这里不清楚 id
是什么。是字符串吗?destination
又是什么?是字符串还是 File
对象?这个方法是同步的还是异步的?
正确示例
dart
Future<bool> install(PackageId id, String destination) {
// ...
}
有了类型,所有这些都变得清晰了。
不兼容的规则
#type_annotate_public_apis
规则与以下规则不兼容:
启用
#要启用 type_annotate_public_apis
规则,请在你的 analysis_options.yaml
文件中的 linter > rules 下添加 type_annotate_public_apis
analysis_options.yaml
yaml
linter:
rules:
- type_annotate_public_apis
如果你使用的是 YAML map 语法来配置 linter 规则,请在 linter > rules 下添加 type_annotate_public_apis: true
analysis_options.yaml
yaml
linter:
rules:
type_annotate_public_apis: true