内容

implicit_call_tearoffs

在将对象用作 Function 时显式撕裂 call 方法。

此规则从 Dart 2.19 开始可用。

规则集:corerecommendedflutter

此规则有 快速修复 可用。

详情

#

在将对象分配给 Function 类型时显式撕裂 .call 方法。显式撕裂会减少魔法。未来的语言版本可能会移除隐式调用撕裂。

错误

dart
class Callable {
  void call() {}
}
void callIt(void Function() f) {
  f();
}

callIt(Callable());

正确

dart
class Callable {
  void call() {}
}
void callIt(void Function() f) {
  f();
}

callIt(Callable().call);

用法

#

要启用 implicit_call_tearoffs 规则,请在 analysis_options.yaml 文件中的 linter > rules 下添加 implicit_call_tearoffs

analysis_options.yaml
yaml
linter:
  rules:
    - implicit_call_tearoffs