問題タブ [kotlin-stateflow]

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 に答える
1625 参照

android - 新しい値が最後の値と同じ場合、StateFlow は出力されません

ログインフォームがあります。私は(APIを呼び出した後)からにStateFlow送信するために使用します。アクティビティでは、ログインに失敗した場合にエラー ダイアログを表示します。 最初はうまくいきますが、ログインに失敗した 2 回目から、エラー ダイアログが再び表示されなくなります。私は両方をテストしましたLoginResultViewModelActivity
.value.emitStateFlow

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

android - Android - kotlin フローから値を読み取る方法は?

部屋のデータベースからエピソードの流れがあります。この流れはライブデータとして問題なく観測できます。

しかし、ユーザーがボタンをクリックしたときに、このフローから最後の値を読み取りたいとも考えています。first() ターミナル フロー演算子を試しましたが、コンパイルされません。何か他のことを手伝ったり提案したりできますか?

フローから読み取ろうとする非コンパイル試行:

このフローは ROOM からのものです。

リポジトリ:

ビュー モデル - Id は StateFlow から取得されます。

コンパイル エラー:

「回避策」として、エピソードを次のようなインスタンス変数に保存しましたが、可能であればそれを避けたいと思います:

=================== 更新/解決策 21/01/15 ==================

stateIn を使用した beigirad (以下の彼の投稿を参照) に触発されたソリューション: