directives_ordering
遵循 Effective Dart 指南的指令排序约定。
详情
#建议遵循 Effective Dart 中的指令排序约定
建议将 dart:
导入放在其他导入之前。
不规范
dart
import 'package:bar/bar.dart';
import 'package:foo/foo.dart';
import 'dart:async'; // LINT
import 'dart:html'; // LINT
不规范
dart
import 'dart:html'; // OK
import 'package:bar/bar.dart';
import 'dart:async'; // LINT
import 'package:foo/foo.dart';
规范
dart
import 'dart:async'; // OK
import 'dart:html'; // OK
import 'package:bar/bar.dart';
import 'package:foo/foo.dart';
建议将 package:
导入放在相对导入之前。
不规范
dart
import 'a.dart';
import 'b.dart';
import 'package:bar/bar.dart'; // LINT
import 'package:foo/foo.dart'; // LINT
不规范
dart
import 'package:bar/bar.dart'; // OK
import 'a.dart';
import 'package:foo/foo.dart'; // LINT
import 'b.dart';
规范
dart
import 'package:bar/bar.dart'; // OK
import 'package:foo/foo.dart'; // OK
import 'a.dart';
import 'b.dart';
建议在所有导入之后,在单独的部分中指定导出。
不规范
dart
import 'src/error.dart';
export 'src/error.dart'; // LINT
import 'src/string_source.dart';
规范
dart
import 'src/error.dart';
import 'src/string_source.dart';
export 'src/error.dart'; // OK
建议按字母顺序对各个部分进行排序。
不规范
dart
import 'package:foo/bar.dart'; // OK
import 'package:bar/bar.dart'; // LINT
import 'a/b.dart'; // OK
import 'a.dart'; // LINT
规范
dart
import 'package:bar/bar.dart'; // OK
import 'package:foo/bar.dart'; // OK
import 'a.dart'; // OK
import 'a/b.dart'; // OK
启用
#要启用 directives_ordering
规则,请在您的 analysis_options.yaml
文件中,将 directives_ordering
添加到 linter > rules 下方
analysis_options.yaml
yaml
linter:
rules:
- directives_ordering
如果您改为使用 YAML 映射语法配置 linter 规则,请在 linter > rules 下方添加 directives_ordering: true
analysis_options.yaml
yaml
linter:
rules:
directives_ordering: true