Flutter & Provider:如何让我的 StreamProvider 监听两个不同的值?
Flutter & Provider : How do I make my StreamProvider listen to two different values?
假设我有以下代码。下面的代码只听一个值:AuthService().user
。如何让我的提供者收听另一个值?我们称该值为:isVoted
.
Widget build(BuildContext context) {
return StreamProvider<SystemUser>.value(
value: AuthService().user,
child: MaterialApp(---))
}
期待您的来信。非常感谢。
您可以使用 StreamGroup 将这两个流合并为一个流并收听。
文档:https://api.flutter.dev/flutter/package-async_async/StreamGroup-class.html
你的情况:
Stream<Object> streamGroup = StreamGroup.merge([AuthService().user, isVoted]);
Widget build(BuildContext context) {
return StreamProvider<Object>.value(
value: streamGroup,
child: MaterialApp(---))
}
假设我有以下代码。下面的代码只听一个值:AuthService().user
。如何让我的提供者收听另一个值?我们称该值为:isVoted
.
Widget build(BuildContext context) {
return StreamProvider<SystemUser>.value(
value: AuthService().user,
child: MaterialApp(---))
}
期待您的来信。非常感谢。
您可以使用 StreamGroup 将这两个流合并为一个流并收听。
文档:https://api.flutter.dev/flutter/package-async_async/StreamGroup-class.html
你的情况:
Stream<Object> streamGroup = StreamGroup.merge([AuthService().user, isVoted]);
Widget build(BuildContext context) {
return StreamProvider<Object>.value(
value: streamGroup,
child: MaterialApp(---))
}