問題タブ [bloc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2131 参照

dart - 1 つの StreamBuilder で 2 つの異なるストリームを使用する

1 つの Stream Builder で 2 つの異なるストリームを使用することは可能ですか? または、この問題にどのように対処すればよいですか?

両方に1つのストリームを使用しようとしましたが、テーマデータのBehaviorSubjectはThemeDataモデルであり、languageStreamの文字列であり、うまくいきません。

これらは私が使いたいストリームです

ブロックは次のようになります。

もう1つはこのように

アプリ全体に影響するため、両方のストリームをメイン ページに配置する必要があります。

0 投票する
1 に答える
874 参照

flutter - 1つのストリームのみにのみ適用されるCombineLatestに似た機能はありますか?

私は Rxdart の初心者で、2 種類のストリームに対して Combinelatest2 を試しました。たとえば、次のようになります。

私のvalidateEmailとvalidatePasswordで:

これは私のホームページ画面のボタンです:

Combinelatest2 を使用すると、observable から 2 種類のエミッションの変更を取得でき、ボタンのオン/オフを切り替えることができますが、電子メールのみを監視したい場合は、どうすればよいですか? 電子メールからのエミッターが正しい場合、送信のボタンがオンになっている、またはその逆

0 投票する
1 に答える
1663 参照

flutter - inheritFromWidgetOfExactType がジェネリック InheritedWidget で機能しない

ウィジェットがジェネリックの子であり、それ自体がジェネリックであるかどうかinheritFromWidgetOfExactTypeをメソッドが見つけられないようです。InheritedWidgetStatefulWidget

ブロックパターンを実装するために InheritedWidget を使用しています。BlocProvider の初期実装は次のようになります。

直接使用すると問題なく動作します:

しかし、ウィジェットツリーが再構築されるたびにブロックの状態が再構築されないように、ブロックプロバイダーを StatefulWidget でラップしたいと思います。

ここで、 InheritedWidget の代わりにこのパターンを使用しようとすると、次のようにinheritFromWidgetOfExactType返されます。null

この問題を克服する方法はありますか? このアプローチを使用してブロックプロバイダーをネストできるようにしたいことに注意してください。