#flutter
#flutter
Вопрос:
Я создал условие, чтобы, если значение отличается от null, я хотел, чтобы отображался контейнер с этой информацией, если значение равно null, я не хочу ничего показывать, но проблема в том, что вместо этого появляется текст null. Что может происходить?
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.white,
body: Column(
children: [
Container(
child: ("$_info" != null)
? Container(
padding:
EdgeInsets.symmetric(horizontal: 20,
vertical: 35),
child: Text(
"$_info",
textAlign: TextAlign.center,
style: TextStyle(
fontFamily: 'Montserrat',
fontSize: 14,
fontWeight: FontWeight.w500),
),
)
: Container(),
),
],
),
};
Ответ №1:
Вы не должны создавать новую строку из _info
и проверять, отличается ли она от null, как в
"$_info" != null
Это всегда будет верно, потому что все строки отличаются от null . Таким образом, вы увидите текст «null», появляющийся на экране, потому что у вас есть Text("$_info")
позже.
Вместо этого вы должны просто проверить, отличается ли _info
оно от null. Итак:
_info != null