#flutter #dart #mobile #localization #intl
Вопрос:
Текущая версия моего проекта flutter-2.2.3, а версия моей библиотеки intl-0.17.0. Когда я добавляю новое значение в любой из моих языковых файлов, я получаю вставки синтаксиса безопасности null в файлах messages_all и l10n в сгенерированном файле. Фрагменты кода :
MessageLookupByLibrary? _findExact(String localeName) {
switch (localeName) {
case 'ar':
return messages_ar.messages;
case 'de':
return messages_de.messages;
case 'en':
return messages_en.messages;
case 'fr':
return messages_fr.messages;
case 'ru':
return messages_ru.messages;
case 'tr':
return messages_tr.messages;
default:
return null;
}
}
MessageLookByLibrary?
Когда я редактирую свои языковые файлы :
flutter pub global run intl_utils:generate
INFO: No @@locale or _locale field found in intl_ar, assuming 'ar' based on the file name.
INFO: No @@locale or _locale field found in intl_de, assuming 'de' based on the file name.
INFO: No @@locale or _locale field found in intl_en, assuming 'en' based on the file name.
INFO: No @@locale or _locale field found in intl_fr, assuming 'fr' based on the file name.
INFO: No @@locale or _locale field found in intl_ru, assuming 'ru' based on the file name.
INFO: No @@locale or _locale field found in intl_tr, assuming 'tr' based on the file name.
Process finished with exit code 0
Ошибки, подобные этой,
Если я не внес никаких изменений, я не получу ошибку, но когда я внесу малейшее изменение, повторятся те же ошибки.
Комментарии:
1. Пожалуйста, предоставьте свое сообщение об ошибке и немного больше контекста
2. Я добавил больше информации
Ответ №1:
проверьте, установлена ли у вас последняя версия intl_utils.
flutter pub global list
Если вы не установили последнюю версию, выполните эту команду.
Вы можете проверить последнюю версию здесь
flutter pub global activate intl_utils 2.4.1
Убедитесь, что имя пакета-intl_utils
Это, по крайней мере, помогло мне.
Овации
Ответ №2:
У меня была та же проблема с последней установленной версией (2.5.1) intl_utils. Что исправило это для меня, так это деактивация и повторная активация intl_utils.
Первый
flutter pub global deactivate intl_utils
А затем переустановите последнюю версию
flutter pub global activate intl_utils 2.5.1