Firebase 颤振:使用firestore中的数据实现自动完成文本字段
我想有一个自动完成文本字段,显示基于firestore数据的建议。我对它进行了研究,发现有很多插件,比如typeahead和autocomplete_textfield,但从他们的文档中很难理解如何使用firestore的数据实现它 任何人都可以知道怎么做…使用这两个插件中的任何一个。提前谢谢 我的代码:Firebase 颤振:使用firestore中的数据实现自动完成文本字段,firebase,flutter,dart,google-cloud-firestore,textfield,Firebase,Flutter,Dart,Google Cloud Firestore,Textfield,我想有一个自动完成文本字段,显示基于firestore数据的建议。我对它进行了研究,发现有很多插件,比如typeahead和autocomplete_textfield,但从他们的文档中很难理解如何使用firestore的数据实现它 任何人都可以知道怎么做…使用这两个插件中的任何一个。提前谢谢 我的代码: TypeAheadField( textFieldConfiguration: TextFieldConfiguration( autofocus: true, style
TypeAheadField(
textFieldConfiguration: TextFieldConfiguration(
autofocus: true,
style: DefaultTextStyle.of(context).style.copyWith(
fontStyle: FontStyle.italic
),
decoration: InputDecoration(
border: OutlineInputBorder()
)
),
suggestionsCallback: (pattern) async {
return await BackendService.getSuggestions(pattern);
},
itemBuilder: (context, suggestion) {
return ListTile(
leading: Icon(Icons.shopping_cart),
title: Text(suggestion['name']),
subtitle: Text('\$${suggestion['price']}'),
);
},
onSuggestionSelected: (suggestion) {
Navigator.of(context).push(MaterialPageRoute(
builder: (context) => ProductPage(product: suggestion)
));
},
)
这是我从firestore读取数据的方式:
Future<List<SearchMeet>> fetchAllMeets(uid) async {
List<SearchMeet> meetList = [];
QuerySnapshot querySnapshot =
await _mainUserCollection
.doc(uid)
.collection('AllMeets').get();
for (var i = 0; i < querySnapshot.docs.length; i++) {
meetList.add(SearchMeet.fromMap(querySnapshot.docs[i].data()));
}
return meetList;
}
databaseService.fetchAllMeets(widget.uid).then((List<SearchMeet> list) {
setState(() {
meetList = list;
});
});
这适用于普通列表,但如何使用typeahead autocomplete textfield插件?请指定您已经尝试过的内容,在堆栈溢出中,当出现问题时,您已经对其进行了调查。我无法尝试任何操作,因为我仍然不知道该做什么。我使用了一个插件并尝试了一些代码,我已经更新了答案。Firestore中的数据只是数据,没有区别。如果您要求用户输入3个值,然后将它们放入一个数组中,那么您将得到一个包含3个值的数组。如果从Firebase中读取三个值并将它们放入一个数组中,则会得到一个包含三个值的数组。e、 这只是数据——三个值,不管它们来自哪里。你能澄清一下你到底遇到了什么问题吗?我很难弄清楚我应该在建议中添加什么回拨,以及Firestore还需要什么其他代码……我不知道该怎么做。如果你不能定义问题是什么,那么帮助你将是一个挑战。听起来你好像不知道如何从Firestore读取数据?如果是这样的话,那么在网上有信息,也有大量的问答,还有很多youtube视频。你试过其中任何一种来指导吗?