【问题标题】:NoSuchMethodError : the getter 'length' was called on nullNoSuchMethodError : 在 null 上调用了 getter 'length'
【发布时间】:2020-06-15 11:14:16
【问题描述】:

我正在使用 Flutter 构建应用程序,这对我来说仍然是新事物,但我被该标题中的那些异常所困扰。

问题是当我尝试在 ListView.builder 中调用“providedService.docs.length”时,如果它为 null,它将返回那些异常,而当有数据时则不会出现异常。

我想要完成的是 get Length 函数应该返回 null 或 0 值,以便在没有数据时 ListView 不会显示任何内容。

body: ListView.builder(
          itemCount: providedService.docs.length,
        itemBuilder: (ctx, index) => Column(
          children: [
            ListTile(
              leading: CircleAvatar(
                child: Text('${(index + 1)}'),
              ),
              title: Text(
                providedService.docs[index],
              ),
            ),
            Divider()
          ],

        ),

      ),
    );

【问题讨论】:

    标签: flutter dart


    【解决方案1】:
    body: ListView.builder(
              itemCount: providedService?.docs?.length ?? 0,
            itemBuilder: (ctx, index) => Column(
              children: [
                ListTile(
                  leading: CircleAvatar(
                    child: Text('${(index + 1)}'),
                  ),
                  title: Text(
                    providedService.docs[index],
                  ),
                ),
                Divider()
              ],
    
            ),
    
          ),
        );
    

    使用这个,如果对象为null则返回0,所以listview会显示空列表

    【讨论】:

    猜你喜欢
    • 2018-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-21
    • 2021-07-18
    • 2020-12-26
    相关资源
    最近更新 更多