Flutter 颤振转盘零安全

Flutter 颤振转盘零安全,flutter,carousel,Flutter,Carousel,我想知道如何对从API接收数据的转盘滑块执行空安全性。 因为每当我运行它时,旋转木马都会工作,但我得到的getter长度是在一个空值上调用的 CarouselSlider( autoPlay: true, pauseAutoPlayOnTouch: Duration(seconds: 5), height: 100, items: <

我想知道如何对从API接收数据的转盘滑块执行空安全性。 因为每当我运行它时,旋转木马都会工作,但我得到的getter长度是在一个空值上调用的

CarouselSlider(
                    autoPlay: true,
                    pauseAutoPlayOnTouch: Duration(seconds: 5),
                    height: 100,
                    items: <Widget>[
                      for(var i=0; i<dashDataRandomCategories.length; i++)
                        Container(
                          margin:
                          const EdgeInsets.only(top: 0.0, left: 20.0),
                          decoration: BoxDecoration(
                            image: DecorationImage(
                              image: NetworkImage(
                                  dashDataRandomCategories[i]
                                  ['product_cat_image']),
                              //image: NetworkImage(image[i]),
                              fit: BoxFit.fill,
                            ),
                            // border:
                            //     Border.all(color: Theme.of(context).accentColor),
                            borderRadius: BorderRadius.circular(8.0),
                          ),
                        ),
                    ]
                  ),
CarouselSlider(
自动播放:对,
PauseAutoplayntouch:持续时间(秒数:5),
身高:100,
项目:[

for(var i=0;i不是最好的解决方案,但给您一个清晰的概念。 你必须应用一个条件。 当数据来自API时,
dashDataRandomCategories
此时为空。 假设
CarouselSlider
在列中。加载
dashDataRandomCategories
时,您可以显示占位符、
容器()
或微光。加载数据时,现在您可以显示滑块

child: Column(
  children: <Widget>[
    Container(),
    dashDataRandomCategories.length == null ? Container(child: Text("Data is Loading")) : CarouselSlider(
                autoPlay: true,
                pauseAutoPlayOnTouch: Duration(seconds: 5),
                height: 100,
                items: <Widget>[
                  for(var i=0; i<dashDataRandomCategories.length; i++)
                    Container(
                      margin:
                      const EdgeInsets.only(top: 0.0, left: 20.0),
                      decoration: BoxDecoration(
                        image: DecorationImage(
                          image: NetworkImage(
                              dashDataRandomCategories[i]
                              ['product_cat_image']),
                          //image: NetworkImage(image[i]),
                          fit: BoxFit.fill,
                        ),
                        // border:
                        //     Border.all(color: Theme.of(context).accentColor),
                        borderRadius: BorderRadius.circular(8.0),
                      ),
                    ),
                ]
              ),Container()]
child:Column(
儿童:[
容器(),
dashDataRandomCategories.length==null?容器(子级:文本(“数据正在加载”)):旋转木马(
自动播放:对,
PauseAutoplayntouch:持续时间(秒数:5),
身高:100,
项目:[
对于(var i=0;i