問題タブ [rx-swift]
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.
swift - RXSwift エラー時のユーザー入力と継続
私はRXを初めて使用し、ユーザー入力が必要なエラーの後、タスクを続行する方法を理解しようとしています.
具体的な例は 2 要素認証です。認証サービスと保護されたリソースがあります。ログインすると、auth-service から LOA-2 (ユーザー名とパスワードを使用) トークンを受け取ります。保護されたリソースからデータを取得しようとすると、LOA-3 (2 要素) が必要であることを示すエラーが表示されます。そのため、ユーザーから入力を取得して認証サービスに送信し、新しいトークン (LOA-3) を取得して、新しいトークンでフェッチ呼び出しを再試行する必要があります。
ログインの例はたくさんありますが、ユーザー入力が必要なチェーンを継続することについて頭を悩ませることはできません。
何か案は?ありがとう :)
swift - Bonjour Discovery の RxSwift とネストされたサブスクリプション
私は Rx を初めて使用し、サービスを解決する Bonjour ディスカバリー クライアントを作成しようとしています。これは命令的に行うのは非常に簡単ですが、RxSwift で試してみたかったのです。
発見された NSNetService オブジェクトは解決前に永続化する必要があるため、ネストされたサブスクリプション呼び出し、発見のための外側の呼び出し、および解決のための内側の呼び出しを行う必要があります...しかし、これは最善の方法ではないことがわかります。
私のプロキシクラスは次のとおりです。
の代わりに呼び出しのflatMap
後に使用すると、主にRxに触れたことがないという理由で、サービスを内部から配列に永続化できないため、サービスは解決されません。ネストされた呼び出しを使用する必要がありますか?browser.rx_netServiceBrowserDidFindServiceMoreComing
subscribeNext
flatMap
私の問題の短いバージョンは上記の作品ですが、複雑に思えます。どんなアイデアでも大歓迎です。
swift - RxSwift を使用して 2 つのリクエストからのエラーを 1 か所でキャッチする方法
私はかなり新しいので、圧縮されたリクエストからエラーをキャッチする方法を考えています(上記の抜粋を参照)。現在の実装では、エラー処理を 2 か所で行っていますが、私の目標は 1 か所で行うことです。このリクエストの1つが失敗すると、シーケンス全体が失敗するため、リクエストは圧縮されます。その結果、両方のリクエストのコードに1つのエラー処理場所が必要になります。
..たぶん、一般的な場所でエラーを処理するサンプルコードとのリンクは、私にとって素晴らしいでしょう。どうもありがとう。
ios - RxSwift で 1 回限りのオブザーバブルを破棄する適切な方法
一度だけ開始したいオブザーバブルがあります。ドキュメントは言う:
dispose bags または takeUntil 演算子を使用することは、リソースが確実にクリーンアップされるようにする強力な方法です。シーケンスが有限時間で終了する場合でも、本番環境で使用することをお勧めします。
私のオブザーバブルは、たった1つのイベントの後に終了します
このオブザーバブルのサブスクライバーをキャンセルすることに興味がなかったとします。一度実行して完了させたいだけです。作業自体が完了したら、このオブザーバブルのライフサイクルを終了させたいです。つまり、私が見ることができる disposeBag の適切な候補はありません。takeUntil も「イベント」を期待していますが、私が見ることができる良いものはありません。
今、私は使い捨てを捨てることによって警告を解決するだけです:
これを行う方法、または使用すべき別のパラダイムはありますか?
ios - RxSwift、さまざまなオブザーバブルをチェーンするにはどうすればよいですか
私はまだリアクティブ プログラミングと RxSwift 全般の初心者です。2 つの異なる操作を連鎖させたい。私の場合、Web サーバーから zip ファイルをダウンロードして、ローカルで解凍したいだけです。同時に、ダウンロードしたファイルの進行状況も表示したいと思います。そこで、最初のオブザーバブルの作成を開始しました。
その後、解凍用の同様の関数を作成します
今のところ、「ビューモデルレイヤー」にこのロジックがあるので、ダウンロード->完了時にサブスクライブ->解凍します
私が望むのは、2 つの Observable を 1 つに結合して、最初にダウンロードを実行し、完了したらファイルを解凍することです。これを行う方法はありますか?
swift - RxAlamofire + 信号の結合
JSONデータでリクエストを検証する新しいObservableをフィルタリングして生成したい単純なサーバーリクエストがあります。
リクエストが無効な場合でも、サーバーの応答がステータス コード 200 を返すため、これを行う必要があります。ただし、Json 応答でこの結果をフィルタリングできます。
サーバーの応答:
ジョンソン:
私のrxリクエストは次のとおりです。
私の質問は次のとおりです: 私の json パス (200 から 300 の間のステータス コード) の場合、Event Next を送信し、Event Complete の後に、これがこのシグナルを完了し、最初のシグナル Completes も同様に完了します。しかし、JSON を検証するときにイベント エラーを送信すると、最初のシグナルが完了または失敗しません。これどうやってするの?
ありがとうございました
swift - Swift (KVO) で観察可能な列挙型を作成する方法はありますか
MVVM でバインドするために RxSwift を使用しようとしています。私は持っていEnum
ます:
およびテスト用のクラス
そして、次のような変化を観察したい:
しかし、プログラムは
*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<RDProject.Test 0x7ff373513020> addObserver:<RxCocoa.KVOObserver 0x7ff37351a420> forKeyPath:@"color" options:5 context:0x0] was sent to an object that is not KVC-compliant for the "color" property.'
単純String
作業のコード:
ここで、クラスを継承しないNSObject
ようにするには、それを作成する必要があることを発見しましたが、動的dynamic
にすることはできません。観測可能Enum
にする方法はありますか?Enum
ios - Realm オブジェクトを格納する RxSwift 変数
Realm はサポートされている変数の型を明示的に示しているため、RxSwift と Realm を組み合わせることがサポートされているかどうかを理解するのに問題があります。
以下の代わりに可能ですか?
このようなことをするために。
グーグルで調べてみましたが、これを行うための拡張機能やその他のソリューションに関する最新情報は見つかりませんでした。助けをいただければ幸いです。または、正しい方向を指しているだけです。