我是新手。
我想从API获取数据并处理是否为空
这是我的代码
#standardSQL
SELECT id, a1, a2
FROM data, UNNEST(array_1) AS a1 WITH OFFSET
JOIN UNNEST(array_2) AS a2 WITH OFFSET
USING(OFFSET)
但是抛出错误
setState(() {
var content = json.decode(res.body);
data = content['results'];
});
data.isEmpty ? Column(children: <Widget>[
Text(
'your inbox is empty',
style: TextStyle(fontSize: 10.0, color: Colors.blueGrey),
)
],): ListView.builder(
itemCount: data == null ? 0 : data.length,
itemBuilder: (BuildContext context, int index) {
return ListTile(
title: Text(
data[index]['body'],
style: TextStyle(fontSize: 15.0, fontWeight: FontWeight.bold),
)
);
},
)
如何解决?
答案 0 :(得分:1)
您(数据变量)为null,因此,当您调用data.isEmpty时,它将引发异常,
尝试先检查它是否不为空
答案 1 :(得分:0)
数据变量为空。您可以像这样检查它:
data?.isEmpty != false ? [empty] : [not empty]
因此,当data为null或data.isEmpty为true时为true,仅当data.isEmpty为false时为false。