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(---))
}