flutter_i18n_plus

Last updated:

0 purchases

flutter_i18n_plus Image
flutter_i18n_plus Images
Add to Cart

Description:

flutter i18n plus

I18nPlus #
I18nPlus est un package de internationalisation avancé pour les applications Flutter. Il offre une solution simple et flexible pour gérer les traductions, le formatage des dates et des devises, ainsi que la pluralisation dans vos applications Flutter.
Fonctionnalités #

Gestion facile des traductions avec support pour les clés imbriquées
Pluralisation
Formatage des dates
Formatage des devises
Changement dynamique de langue
Support pour les arguments dans les traductions

Installation #
Ajoutez I18nPlus à votre fichier pubspec.yaml :
dependencies:
flutter_i18n_plus: ^1.0.0
copied to clipboard
Ensuite, exécutez :
flutter pub get
copied to clipboard
Configuration #

Créez un dossier assets/translations/ dans votre projet.
Ajoutez vos fichiers de traduction JSON dans ce dossier (par exemple, en.json, fr.json).
Mettez à jour votre pubspec.yaml pour inclure les assets :

flutter:
assets:
- assets/translations/
copied to clipboard
Utilisation #
Initialisation #
Enveloppez votre MaterialApp (ou CupertinoApp) avec I18nPlusProvider :
void main() {
runApp(
I18nPlusProvider(
supportedLocales: [Locale('en', 'US'), Locale('fr', 'FR')],
defaultLocale: Locale('en', 'US'),
translationsPath: 'assets/translations',
child: MyApp(),
),
);
}
copied to clipboard
Traductions simples #
Utilisez l'extension t sur BuildContext pour accéder aux traductions :
Text(context.t('greeting'))
copied to clipboard
Traductions avec arguments #
Text(context.t('welcome', args: {'name': 'John'}))
copied to clipboard
Pluralisation #
Utilisez l'extension p sur BuildContext pour la pluralisation :
Text(context.p('items', itemCount, args: {'count': itemCount.toString()}))
copied to clipboard
Formatage de date #
Text(I18nPlus().formatDate(DateTime.now()))
copied to clipboard
Formatage de devise #
Text(I18nPlus().formatCurrency(1234.56))
copied to clipboard
Changement de langue #
ElevatedButton(
onPressed: () {
final newLocale = I18nPlus().currentLocale.languageCode == 'en'
? Locale('fr', 'FR')
: Locale('en', 'US');
I18nPlusProvider.of(context).setLocale(newLocale);
},
child: Text('Changer de langue'),
)
copied to clipboard
Exemple de fichier de traduction #
en.json:
{
"greeting": "Hello",
"welcome": "Welcome, {name}!",
"items": {
"one": "{count} item",
"other": "{count} items"
}
}
copied to clipboard
Contributeurs #
Nous remercions chaleureusement tous nos contributeurs qui ont aidé à faire de I18nPlus ce qu'il est aujourd'hui !
Un grand merci va à ces merveilleux contributeurs (😍✌🏿):





Dogbo Ezechiel
mohamed sangare
Gael Yad Eugene SASSAN





Ce projet suit la spécification all-contributors. Les contributions de toute nature sont les bienvenues !
Contribution #
Les contributions sont les bienvenues ! N'hésitez pas à ouvrir une issue ou à soumettre une pull request sur GitHub.
Licence #
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.