🐄
Flutter slangの方が使いやすい
はじめに
今まではローカライズのために intl パッケージを使っていたが、slang の方が使いやすいと感じた。
というのも、チーム開発や後継者、新しく参加するメンバーなど、さまざまな状況で使い勝手が良いと思う。
言語ファイルの書き方の違い
この部分が最も使い勝手が違った。jsonの方が書きやすい。
slangの方が、切り分けて管理できるので物凄く分かりやすい。
個人的に、Widgetや機能ごとに分けています。
intl
{
"@@locale": "ja",
"yes": "はい",
"@yes": {
"description": "説明文"
},
"no": "いいえ",
"@no": {
"description": "説明文"
}
}
slang
{
"common": {
"yes": "はい",
"no": "いいえ"
},
"record": {
"save": "保存する"
}
}
使い方
どちらも自動生成されたファイルをインポートして使用するが、slang の方が使いやすい。
intl の場合、BuildContext が必要になるため、構成上 context が不要な場面でも引数として渡さなければならず、面倒だった。
特に、単体テストを行う際にその不便さを強く感じた。
intl
L10n.of(context)!.yes
slang
t.common.yes
終わりに
気づけたと言うことで、全部slangに置き換えていきます。😇
必要だったパッケージ
Discussion