类“ String”没有实例方法“ map”

阿纳布兹

我正在使用抖动轮播代码,并尝试从Firebase添加图像。这是我的代码:

class FullscreenSliderDemo extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Color(0xFF030164),
      body: StreamBuilder(
        stream: FirebaseFirestore.instance.collection('quotes').snapshots(),
        builder: (context, snapshot) {
          if (!snapshot.hasData) return Text('Loading data... Please Wait');

          final double height = MediaQuery.of(context).size.height;
          return Container(
              height: 100.0,
              padding: const EdgeInsets.all(4.0),
              child: new ListView(
                  scrollDirection: Axis.horizontal,
                  children: snapshot.data.documents
                      .map<Widget>((DocumentSnapshot document) {
                    return CarouselSlider(
                        options: CarouselOptions(
                          height: height,
                          viewportFraction: 1.0,
                          enlargeCenterPage: false,
                        ),
                        items: (document.data()['img']).map(
                          (item) => Container(
                            child: Center(
                                child: Image.network(
                              item,
                              fit: BoxFit.cover,
                              height: height,
                            )),
                          ),
                        ).toList());
                  }).toList(),));
        },
      ),
    );
  }
}

我收到错误消息Class 'String' has no instance method 'map'.,但不确定如何解决。如果有人可以提供帮助,我将不胜感激!

弗兰克·范普菲伦

我认为您正在寻找这样的东西:

  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Color(0xFF030164),
      body: StreamBuilder(
        stream: FirebaseFirestore.instance.collection('quotes').snapshots(),
        builder: (context, snapshot) {
          if (!snapshot.hasData) return Text('Loading data... Please Wait');

          final double height = MediaQuery.of(context).size.height;
          return CarouselSlider(
            options: CarouselOptions(
              height: height,
              viewportFraction: 1.0,
              enlargeCenterPage: false,
            ),
            items: snapshot.data.documents
              .map<Widget>((document) {
                return Container(
                  child: Center(
                    child: Image.network(
                      document.data()['img'],
                      fit: BoxFit.cover,
                      height: height,
                    )
                  ),
                ),
              ).toList()
            )
          )
        },
      ),
    );
  }

使用此功能CarouselSlider,所有文档/图像只有一个,而不是每个文档一个。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Flutter / Dart错误-NoSuchMethodError:类'_InternalLinkedHashMap <String,dynamic>'没有实例方法'map'具有匹配的参数

类“String”没有实例方法“-”

Dart类“ String”没有实例方法“ cast”

排序没有实例化的类方法

类没有实例方法`call`

Firestore类“ QuerySnapshot”没有实例方法“ []”

如何从Map [String,String]实例化案例类

调用没有类实例的C ++类方法?

装饰器调用没有类实例化的类方法?

未处理的异常:NoSuchMethodError:类'String'没有实例获取方法'path'

未处理的异常:NoSuchMethodError:“String”类没有实例方法“forEach”

Flutter:类'Future<List<String>>' 没有实例getter 'length'

String类中没有克隆方法

Scala Map [String,Int]类投放灾难

在没有实例的类对象上设置魔术方法?

Flutter Animation <Color>:类“ Color”没有实例方法“-”

“ E1101”-“类”的实例没有“方法”成员

类'List<DocumentSnapshot>' 在 Flutter 中没有实例方法 'call'

类“ Timestamp”没有实例方法“ isAfter” Flutter

没有类实例化的命名空间方法

发生异常的类“UserSite”没有实例方法“[]”

Scala案例类是否有Map支持?

在类成员的实例化期间:使用 map[key] 访问 std::map 值时,“没有运算符“[]”匹配这些操作数”

具有Map参数的Scala案例类复制方法

NoSuchMethodError:类'FlutterError'没有实例获取方法'code'。接收方:“ FlutterError”实例尝试调用:代码)

类“ QueryDocumentSnapshot”没有实例方法“ []”。接收方:“ QueryDocumentSnapshot”的实例尝试调用:[](“名称”)

Firebase Flutter Dart:“_JsonQuerySnapshot”类没有实例方法“[]”。接收器:'_JsonQuerySnapshot' 的实例

使用 map2_dbl 映射时,没有适用于“c('double','numeric') 类对象的 'mae' 方法?

NoSuchMethodError:没有接口方法getOrDefault(Ljava / lang / Object; Ljava / lang / Object;)Ljava / lang / Object; 在Ljava / util / Map类中;