#flutter
Вопрос:
Я хочу проверить , Icon
не возвращает ли значение null, и если оно возвращает значение null, то покажите SvgPic
, или еще покажите Icon
.
Ошибки:
- Слишком много позиционных аргументов,
- Свойство «значок» не может быть доступно безоговорочно, потому что получатель может быть «нулевым». Попробуйте сделать доступ условным (используя»?.») или добавить нулевую проверку к цели («!»).
.
final SvgPicture? svgPic; final Icon? icon;
child: Container(widget.icon == null
? widget.svgPic
: Icon(widget.icon.icon,
color: widget.iconColour)),
),
Ответ №1:
- Слишком много позиционных аргументов
Вы не добавили в этот контейнер никакой метки параметров
- Свойство «значок» не может быть доступно безоговорочно, потому что получатель может быть «нулевым». Попробуйте сделать доступ условным (используя ‘?.’) или добавить нулевую проверку к цели (‘!’)
Вы пытаетесь получить доступ к свойству значка nullable, поэтому вам нужно использовать ? или !.
Вместо:
Container(widget.icon == null ? widget.svgPic
: Icon(widget.icon.icon, color: widget.iconColour),
),
Воспользуйся:
Container(child: widget.icon == null ? widget.svgPic
: Icon(widget.icon!.icon, color: widget.iconColour)
),
Комментарии:
1. большое спасибо за объяснение и решение, оно работает.