Урок 51: 'Основы работы с данными - работаем с JSON'

preview_player
Показать описание
______
______
______
______

______
0:00 - Вступление
0:45 - Что такое JSON
2:33 - Типы данных
4:30 - Разбираем пример JSON
21:00 - Пишем сериализацию руками
43:20 - Используем json_serializable
Рекомендации по теме
Комментарии
Автор

никогда не писал комменты на ютубе, но сейчас реально от благодарности распирает. спасибо!!!

bpsnwbpsnw
Автор

Cпасибо за лучшее объяснение работы с json!

АлександрКлепов-ох
Автор

Везде про JSON пишут. Оказывается вообще не сложная тема) Спасибо за урок!

dmitry
Автор

Спасибо! Интересно было узнать как работать с JSON с помощью кодогенерации 👍

vafinruslan
Автор

Пол дня мучался, пришёл к некоторым выводам, может помогу кому-то, если "address.g.dart" не создаётся, сначала сохраните этот файл Ctrl + S, и только потом - flutter pub run build_runner build
Если же при создании "address.g.dart" выдаёт ошибку, мне помогли следующие команды в терминале:
-flutter clean
-flutter pub cache repair
-flutter pub run build_runner clean
И наконец-то
-flutter pub get
-flutter pub run build_runner build

Grig_Grigoryan
Автор

Спаибо! Спасибо! Вы реально момогаете и я думаю всем. Всего вам наиулчшего!

omelchenkoaleks
Автор

большое спасибо за урок. Респект автору за такой контент.🔥

senpai
Автор

Отличный урок, спасибо! try catch, конечно нужно народ приучать везде использовать ) Кстати, интересно - как по феншую обрабатывать исключение, я имею ввиду где регистрировать событие (по аналогии с журналом приложения сервера) и как сообщать разработчику об исключении

Raimkhodzhanov
Автор

спасибо! Надеюсь после блокировки ютуба вы продолжите выкладывать видеоролики и сюда, для аудитории не из России. Если это будет возможно

morrigan_ghost
Автор

Вы в начале сказали что Json это строка, а потом в методе fromJson вы считаете что вам должен прилететь массив.
Не правильно ли будет в методе fromJson получать на вход строку и там её парить?
Или я что-то пропустил?

Logic-dy
Автор

А как указать, что поле в джейсоне будет типа "дата"?

mevgen
Автор

Доброго времени суток!
Можно обратиться с одной просьбой? )

Мы в команде переписываем один проект с RN на Flutter так как уперлись в потолок производительности RN. Проект с огромными списками на сокетах.Уже готовы в принципе на релиз но уже поймали несколько раз баг когда команда на бекенде добавляет поле (ключ) в JSON и мы ловим баг что модель не готова принять дополнительное поле так как оно не описано.

Например у меня такая модель
@freezed
class Instrument with _$Instrument {
const factory Instrument({
@Default('') String symbol,
@Default('') String description,
}) = _Instrument;

factory Instrument.fromJson(Map<String, dynamic> json) => _$InstrumentFromJson(json);
}
А бекенд взяли и добавили еще одно поле ключ например "String typeName" и соответсвенно Instrument.fromJson() метод мне ничего не отпадёт так как такое поле не описано в моей модели. Есть какой то нормальный путь как это обойти не дергая на горячую json['symbol'] и т.д.
Не подскажете со своего опыта как можно обойти такой баг?


Заранее благодарю
Андрей.

andreyf
join shbcf.ru