在Flutter中使用orderBy()
方法对Firebase Firestore中的数据进行排序时,如果没有返回任何值,可能是由于以下几个原因:
Firestore是Firebase提供的一个NoSQL数据库,它允许你存储和同步数据,并且支持实时更新。Flutter是一个用于构建跨平台移动应用的框架,它提供了丰富的组件和工具来简化开发过程。
asc
)或降序(desc
)进行排序。import 'package:flutter/material.dart';
import 'package:cloud_firestore/cloud_firestore.dart';
void main() {
runApp(MyApp());
Firestore.instance.settings(timestampsInSnapshotsEnabled: true);
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Firestore OrderBy Example'),
),
body: FirestoreList(),
),
);
}
}
class FirestoreList extends StatefulWidget {
@override
_FirestoreListState createState() => _FirestoreListState();
}
class _FirestoreListState extends State<FirestoreList> {
List<DocumentSnapshot> _data = [];
@override
void initState() {
super.initState();
_loadData();
}
Future<void> _loadData() async {
QuerySnapshot querySnapshot = await Firestore.instance.collection('yourCollection').orderBy('yourField', Query.Direction.asc).get();
setState(() {
_data = querySnapshot.documents;
});
}
@override
Widget build(BuildContext context) {
return ListView.builder(
itemCount: _data.length,
itemBuilder: (context, index) {
return ListTile(
title: Text(_data[index]['yourField']),
);
},
);
}
}
通过以上步骤,你应该能够诊断并解决在Flutter中使用orderBy()
时Firestore中没有值的问题。
领取专属 10元无门槛券
手把手带您无忧上云