首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >_CastError (Null值上使用的null检查操作符)在开发字典应用程序时

_CastError (Null值上使用的null检查操作符)在开发字典应用程序时
EN

Stack Overflow用户
提问于 2022-09-25 13:56:28
回答 2查看 21关注 0票数 0

我正在开发一个字典app..And,我在点击搜索图标时得到了这个错误。

代码语言:javascript
复制
_CastError (Null check operator used on a null value)

这是我代码的一部分

代码语言:javascript
复制
Container(
           child: ListTile(
           title: Text(data.word!),
           subtitle: Text(
           data.phonetics![index].text!),
           trailing: IconButton(
             onPressed: () {
               final path = data
                .phonetics![index]
                .audio;
                  playAudio("https:$path");
                  },
                  icon: const Icon(
                  Icons.audiotrack)),
                  ),
                ),

这就是异常所指向的代码

代码语言:javascript
复制
data.phonetics![index].text!

我正在使用颤振2.5.3帮助我提前解决这个error..Thanks

EN

回答 2

Stack Overflow用户

发布于 2022-09-25 14:01:17

尝试在文本大小写上接受null,并在使用!之前检查null

代码语言:javascript
复制
Container(
  child: ListTile(
    title: Text("${data.word}"),
    subtitle: Text("${data.phonetics?[index].text}"),
    trailing: IconButton(
        onPressed: () {
          final path = data.phonetics?[index].audio;
          if (path != null) {
            playAudio("https:$path");
          }
        },
        icon: const Icon(Icons.audiotrack)),
  ),
),
票数 0
EN

Stack Overflow用户

发布于 2022-09-25 16:19:40

错误解释: Bang操作符(!)这意味着在颤振中,当使用这个运算符时,您完全确定变量在任何情况下都不会是空的。

正如您所写的data.phonetics![index].text!,这是产生错误的地方。现在错误是说phoneticstext都是null

有两种方法可以和平解决这个问题-

  1. 使用if条件来确认变量是否为空
  2. 使用空感知的if-nullE 215操作符e 116??E 217这样的H 218G 219

代码语言:javascript
复制
${data.phonetics?[index].text ?? ''}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73845063

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档