Flutter代码质量检查插件fd_lints的使用

Flutter代码质量检查插件fd_lints的使用

fd_lints

Floating Dartists

Pub Version

fd_lints 是一个为 Dart 和 Flutter 项目设计的严格代码检查规则集。这些规则由 Floating Dartists 制定。

你可以使用两种不同的规则集:

  • dart:适用于 Dart 项目
  • flutter:适用于 Flutter 项目(包含 dart 规则)

安装fd_lints

首先,在你的 pubspec.yaml 文件中添加 fd_lintscustom_lint

dev_dependencies:
  custom_lint:
  fd_lints:

然后在你的 analysis_options.yaml 文件中包含你想要使用的规则集,并启用 custom_lint 插件:

include: package:fd_lints/dart.yaml # 推荐用于 Dart 项目
# include: package:fd_lints/flutter.yaml # 推荐用于 Flutter 项目

analyzer:
  plugins:
    - custom_lint

分析器

语言

默认情况下,fd_lints 启用了更严格的类型检查。这包括以下规则:

  • strict-casts
  • strict-inference
  • strict-raw-types

排除

以下文件默认被排除:

  • **/*.g.dart
  • **/*.freezed.dart,由 freezed 生成的文件
  • **/*.mocks.dart,由 mockito 生成的文件
  • **/*.mapper.dart,由 dart_mappable 生成的文件
  • **/*.tailor.dart,由 theme_tailor 生成的文件

检查规则

自定义规则

这些规则是由我们使用 custom_lint 包创建的。

规则 严重性
避免非空断言 ⚠️
避免as操作符 ⚠️
在环境构造函数上使用const

Dart规则

规则 严重性
always_use_package_imports ℹ️
avoid_dynamic_calls ℹ️
avoid_empty_else ℹ️
…(其他规则)

Flutter规则

规则 严重性
avoid_print ℹ️
avoid_web_libraries_in_flutter ℹ️
avoid_unnecessary_containers ℹ️
…(其他规则)

示例Demo

以下是完整的示例代码,展示了如何配置 fd_lints 并应用到 Flutter 项目中。

pubspec.yaml

name: example
description: Example of using fd_lints
version: 1.0.0

environment:
  sdk: ">=2.18.0 <3.0.0"

dev_dependencies:
  custom_lint:
  fd_lints:

analysis_options.yaml

include: package:fd_lints/flutter.yaml

analyzer:
  plugins:
    - custom_lint

更多关于Flutter代码质量检查插件fd_lints的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter代码质量检查插件fd_lints的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


fd_lints 是一个用于 Flutter 应用程序的代码质量检查工具,它基于 lint 包,并针对 Flutter 项目进行了优化。fd_lints 提供了一套默认的代码风格和最佳实践规则,帮助开发者保持代码的一致性和可维护性。

安装 fd_lints

要使用 fd_lints,首先需要在你的 Flutter 项目中添加依赖。

  1. 添加依赖

    打开 pubspec.yaml 文件,在 dev_dependencies 部分添加 fd_lints

    dev_dependencies:
      fd_lints: ^1.0.0
    

    然后运行 flutter pub get 来获取依赖。

  2. 配置 analysis_options.yaml

    在项目的根目录下创建或编辑 analysis_options.yaml 文件,引入 fd_lints 的规则:

    include: package:fd_lints/analysis_options.yaml
    

    你也可以在引入 fd_lints 的规则之后,覆盖或添加自定义规则:

    include: package:fd_lints/analysis_options.yaml
    
    analyzer:
      strong-mode:
        implicit-casts: false
        implicit-dynamic: false
    
    linter:
      rules:
        - avoid_print
        - avoid_empty_else
    

使用 fd_lints

一旦配置完成,你的 IDE(如 Android Studio 或 VS Code)会使用 fd_lints 的规则对代码进行静态分析。你可以在 IDE 中看到代码中的警告和错误,并根据提示进行修复。

常见配置

fd_lints 提供了许多默认规则,但你也可以根据需要自定义规则。以下是一些常见的配置选项:

  • 禁止使用 printavoid_print
  • 禁止空 else 语句avoid_empty_else
  • 强制使用 const 构造函数prefer_const_constructors
  • 禁止使用 dynamic 类型avoid_dynamic

你可以在 analysis_options.yaml 中启用或禁用这些规则。

运行代码检查

你可以通过以下命令手动运行代码检查:

flutter analyze
回到顶部