Заполнитель Int в локализациях флаттера
Я пытаюсь добавить текстовую запись в файл «arb» с заполнителем типа int, но безуспешно, так как получаю следующую ошибку:
Number format null for the times placeholder does not have a corresponding NumberFormat constructor.
Check the intl library's NumberFormat class constructors for allowed number formats.
Generating synthetic localizations package has failed.
Запись следующая:
"increment_message": "You have pushed the button this many times: {times}",
"@increment_message": {
"placeholders": {
"times": {
"type": "int",
"example": "123"
}
}
}
Я знаю, что все остальное настроено правильно, потому что изменение заполнителя на String работает:
"increment_message": "You have pushed the button this many times: {times}",
"@increment_message": {
"placeholders": {
"times": {
"type": "String",
"example": "123"
}
}
}
Полный код, если вы хотите запустить, размещен на github здесь:
Работа с использованием String
Итак, мой вопрос: как использовать целочисленный заполнитель в файле arb, похоже, что-то связано с
NumberFormat
но я не могу понять как.
2 ответа
Добавление свойства формата должно решить эту проблему.
"increment_message": "You have pushed the button this many times: {times}",
"@increment_message": {
"placeholders": {
"times": {
"type": "int",
"format": "decimalPattern",
"example": "123"
}
}
}
Я запустил ваше репо (ветви String и int), и все работает нормально. Ты пробовал
flutter clean
?