You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Dart中嵌套if else语句如何正确改写为三目运算符?

错误原因
  • 语法结构错误:三目运算符的标准结构为条件 ? 真值返回内容 : 假值返回内容,你编写的代码中多了冗余的LoginScreen.routeName :片段,出现多余冒号,直接触发语法报错。
  • 逻辑不匹配原规则:原代码中_amplifyConifured为false时返回LoadingScreen.routeName,你的错误代码第一层假分支逻辑混乱,和原业务逻辑不一致。
  • 存在变量拼写不一致风险:原if判断中使用的变量为_amplifyConifured(拼写缺字母g,正确拼写应为configured),三目代码中写的是_amplifyConfigured,如果是变量名写错也会导致运行异常。
  • 原if-else代码存在疏漏:你提供的原逻辑代码中,else分支漏写了return关键字,直接运行原代码也会出现返回值缺失问题。
正确三目运算符实现
return _amplifyConfigured 
    ? _isUserIsLoggedIn 
        ? DashboardScreen.routeName 
        : LoginScreen.routeName 
    : LoadingScreen.routeName;

内容的提问来源于stack exchange,提问作者user3697484

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 16:15:04