gpt4 book ai didi

flutter - 如何在 flutter 中捕获 StreamProvider 中的错误

转载 作者:行者123 更新时间:2023-12-03 03:16:38 40 4
gpt4 key购买 nike

当我尝试在 firestore 中获取不存在的数据时,我遇到了 StreamProvider 的问题。

Stream<CollectedItem> streamCollectedItem(String id,int category)
{
return _db
.collection('users')
.document(id)
.collection('CollectedItems').where('category', isEqualTo: category)
.limit(1)
.snapshots()
.map((snap) => CollectedItem.fromFirestore(snap.documents.first));

}

我像这样调用这个函数:
return StreamProvider<CollectedItem>.value(
value: db.streamCollectedItem(userID,collectMeNotification.category),
child: AlertDialog(
title: Text('Quantité'),
content: SingleChildScrollView(
child: popUp(collectMeNotification,userID)

),

但是我遇到了“没有提供 catchError”的问题,因为我正在将我的流与一个不存在的数据链接起来。

我怎样才能解决这个问题 ?

最佳答案

您可以使用 catchError在流发出错误的情况下提供回退值。

发出 null例如,这将是:

StreamProvider(
builder: (_) => someStream,
catchError: (_, __) => null,
child: ...,
)

关于flutter - 如何在 flutter 中捕获 StreamProvider 中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57453843/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com