Почему я получаю сообщение об ошибке с помощью оператора tenary? - PullRequest
0 голосов
/ 03 мая 2020

Я попытался сделать текст, который должен быть видимым только, если variable1 == "1", но я получил ошибку. Кто-нибудь может сказать мне, почему я получаю эту ошибку? Ниже приведен код, который я пробовал. Заранее спасибо!

Padding(
                padding: const EdgeInsets.symmetric(vertical: 28.0),
                child:
                Container(
                  child: variable1 == "1"
                  ?Text(
                    "Test",
                    style: TextStyle(fontSize: 25),
                  ),
                ),
              ), 

Ответы [ 3 ]

0 голосов
/ 03 мая 2020

Вы получаете ошибку, потому что вы не добавили часть else троичного оператора. Проверьте код ниже: он добавляет пустой Container, который не отображается, если variable1 != null.

Padding(
      padding: const EdgeInsets.symmetric(vertical: 28.0),
      child: Container(
        child: variable1 == "1"
            ? Text(
                "Test",
                style: TextStyle(fontSize: 25),
              )
            : Container(),
      ),
    );

Надеюсь, это поможет.

0 голосов
/ 03 мая 2020

Вам нужно добавить что-то, что будет возвращено, если условие ложно с :

Синтаксис троичной операции:

[condition] ? [do this if the condition is true] : [do this if the condition is false]

В вашем случае вы должен вернуть SizedBox, поскольку это более эффективно.

Как это

Container(
    child: variable1 == "1"
           ? Text(
               "Test",
               style: TextStyle(fontSize: 25)
             )
           : SizedBox()
)
0 голосов
/ 03 мая 2020

Вы должны добавить, что если условие неверно. Вы можете указать после выполнения (:). как я указал пустой текст.

child: variable1 == "1"
                  ?Text(
                    "Test",
                    style: TextStyle(fontSize: 25),
                  ): Text(""),
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...