🦁

[Flutter]自動的にDartファイルをExportする:index_generatorの活用法

2024/04/22に公開

概要

export 'sample/sample.dart';

Flutter においてライブラリ内のコードにアクセスするには、ライブラリ側のルートファイルなどで export を記述しないといけません。
この export 文を dart ファイルを作成するたびに記述するのは面倒です。
この記事では、index_generator を使用して、ライブラリ内の dart ファイルを自動で export 文に記述する方法について紹介します。

https://pub.dev/packages/index_generatorっs

方法

手順

基本的には README.md に記載されている通りです。

  1. dart/flutter pub global activate index_generatorでインストール
  2. pubspec.yaml に下記のように追加
index_generator:
  # 除外するファイルを指定できる
  exclude:
    - "**.g.dart"
  indexes:
    - path: lib

3.<dart|flutter> pub global run index_generatorでファイル生成。

結果

// GENERATED CODE - DO NOT MODIFY BY HAND

library simple_app_kit;

export 'sample/sample1.dart';
export 'sample/sample2.dart';

上記の 3 手順を実行すると下記のようなコードが生成され、ライブラリ内のコードを使用できるようになります。
他にもindex_generator.yamlを作成することで、export 文を生成するディレクトリを指定したり、より詳細に設定できるそうです。

感想

基本的に README.md に記載されている内容の紹介になってしまいましたが、こういうライブラリがあることを自分が知らなかったので、布教の気持ちでこの記事を書いてみました。
誰かの役に立てていたら幸いです 🙌

関連

https://pub.dev/packages/index_generator

GitHubで編集を提案

Discussion