【问题标题】:Flutter Multiple combined filterFlutter Multiple 组合滤波器
【发布时间】:2022-11-09 08:04:44
【问题描述】:

嘿,我也是新手,我想在电子商务应用程序中创建类似的组合过滤器屏幕,例如产品将有 3 个字段品牌、价格范围、尺寸,我想通过组合品牌、价格和尺寸来显示来自 Firebase 快照的数据

                stream:
                    FirebaseFirestore.instance.collection("users").snapshots(),
                builder: (context, snapshot) {
                  if (snapshot.connectionState == ConnectionState.active) {

                    final brandss = FirebaseFirestore.instance
                        .collection('users')
                        .where('name', isEqualTo: 'zara')
                        .snapshots();


                    if (snapshot.hasData && snapshot.data != null) {
                      return Expanded(
                        child: ListView.builder(
                          itemCount: snapshot.data!.docs.length,
                          itemBuilder: (context, index) {
                            Map<String, dynamic> userMap =
                                snapshot.data!.docs[index].data()
                                    as Map<String, dynamic>;

                            return ListTile(
                              leading: CircleAvatar(
                                backgroundImage:
                                    NetworkImage(userMap["profilepic"]),//image
                              ),
                              title: Text(
                                  userMap["brand"] + " (${userMap["price"]})"),
                              subtitle: Text(userMap["email"]),
                              trailing: IconButton(
                                onPressed: () {
                                  // Delete
                                },
                                icon: Icon(Icons.delete),
                              ),
                            );
                          },
                        ),
                      );
                    } else {
                      return Text("No data!");
                    }


``` please help me with logic

【问题讨论】:

    标签: android flutter firebase dart flutter-web


    【解决方案1】:

    您可以尝试使用多个 where 过滤 3 个条件

    FirebaseFirestore.instance.Collection('product').where('Brand', isEqualTo:Brand).where('price', isLessThanOrEqualTo: maxPrice).where('price', isGreaterThanOrEqualTo: minPrice).where('size',isEqualTo:size)

    【讨论】:

      猜你喜欢
      • 2020-11-01
      • 2013-03-27
      • 1970-01-01
      • 2017-01-05
      • 2014-02-12
      • 2023-03-19
      • 1970-01-01
      • 2015-06-09
      • 1970-01-01
      相关资源
      最近更新 更多