import 'dart:convert'; import 'package:flutter/services.dart' show rootBundle; import 'package:get/get.dart'; class AppTranslations extends Translations { static const List supportedLocales = ['zh_cn', 'en_us']; final Map> messages = {}; static Future init() async { final AppTranslations inst = Get.find(); inst.messages.clear(); for (final locale in supportedLocales) { inst.messages[locale] = jsonDecode( await rootBundle.loadString('assets/locales/$locale.json'), ) .map((key, value) => MapEntry(key, value.toString())) .cast(); } } @override Map> get keys => messages; }