問題タブ [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.

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

swift - RXSwift エラー時のユーザー入力と継続

私はRXを初めて使用し、ユーザー入力が必要なエラーの後、タスクを続行する方法を理解しようとしています.

具体的な例は 2 要素認証です。認証サービスと保護されたリソースがあります。ログインすると、auth-service から LOA-2 (ユーザー名とパスワードを使用) トークンを受け取ります。保護されたリソースからデータを取得しようとすると、LOA-3 (2 要素) が必要であることを示すエラーが表示されます。そのため、ユーザーから入力を取得して認証サービスに送信し、新しいトークン (LOA-3) を取得して、新しいトークンでフェッチ呼び出しを再試行する必要があります。

ログインの例はたくさんありますが、ユーザー入力が必要なチェーンを継続することについて頭を悩ませることはできません。

何か案は?ありがとう :)

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

swift - Bonjour Discovery の RxSwift とネストされたサブスクリプション

私は Rx を初めて使用し、サービスを解決する Bonjour ディスカバリー クライアントを作成しようとしています。これは命令的に行うのは非常に簡単ですが、RxSwift で試してみたかったのです。

発見された NSNetService オブジェクトは解決前に永続化する必要があるため、ネストされたサブスクリプション呼び出し、発見のための外側の呼び出し、および解決のための内側の呼び出しを行う必要があります...しかし、これは最善の方法ではないことがわかります。

私のプロキシクラスは次のとおりです。

の代わりに呼び出しのflatMap後に使用すると、主にRxに触れたことがないという理由で、サービスを内部から配列に永続化できないため、サービスは解決されません。ネストされた呼び出しを使用する必要がありますか?browser.rx_netServiceBrowserDidFindServiceMoreComingsubscribeNextflatMap

私の問題の短いバージョンは上記の作品ですが、複雑に思えます。どんなアイデアでも大歓迎です。

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

swift - RxSwift を使用して 2 つのリクエストからのエラーを 1 か所でキャッチする方法

私はかなり新しいので、圧縮されたリクエストからエラーをキャッチする方法を考えています(上記の抜粋を参照)。現在の実装では、エラー処理を 2 か所で行っていますが、私の目標は 1 か所で行うことです。このリクエストの1つが失敗すると、シーケンス全体が失敗するため、リクエストは圧縮されます。その結果、両方のリクエストのコードに1つのエラー処理場所が必要になります。

..たぶん、一般的な場所でエラーを処理するサンプルコードとのリンクは、私にとって素晴らしいでしょう。どうもありがとう。

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

ios - RxSwift で 1 回限りのオブザーバブルを破棄する適切な方法

一度だけ開始したいオブザーバブルがあります。ドキュメントは言う:

dispose bags または takeUntil 演算子を使用することは、リソースが確実にクリーンアップされるようにする強力な方法です。シーケンスが有限時間で終了する場合でも、本番環境で使用することをお勧めします。

私のオブザーバブルは、たった1つのイベントの後に終了します

このオブザーバブルのサブスクライバーをキャンセルすることに興味がなかったとします。一度実行して完了させたいだけです。作業自体が完了したら、このオブザーバブルのライフサイクルを終了させたいです。つまり、私が見ることができる disposeBag の適切な候補はありません。takeUntil も「イベント」を期待していますが、私が見ることができる良いものはありません。

今、私は使い捨てを捨てることによって警告を解決するだけです:

これを行う方法、または使用すべき別のパラダイムはありますか?

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

ios - RxSwift、さまざまなオブザーバブルをチェーンするにはどうすればよいですか

私はまだリアクティブ プログラミングと RxSwift 全般の初心者です。2 つの異なる操作を連鎖させたい。私の場合、Web サーバーから zip ファイルをダウンロードして、ローカルで解凍したいだけです。同時に、ダウンロードしたファイルの進行状況も表示したいと思います。そこで、最初のオブザーバブルの作成を開始しました。

その後、解凍用の同様の関数を作成します

今のところ、「ビューモデルレイヤー」にこのロジックがあるので、ダウンロード->完了時にサブスクライブ->解凍します

私が望むのは、2 つの Observable を 1 つに結合して、最初にダウンロードを実行し、完了したらファイルを解凍することです。これを行う方法はありますか?

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

swift - RxAlamofire + 信号の結合

JSONデータでリクエストを検証する新しいObservableをフィルタリングして生成したい単純なサーバーリクエストがあります。

リクエストが無効な場合でも、サーバーの応答がステータス コード 200 を返すため、これを行う必要があります。ただし、Json 応答でこの結果をフィルタリングできます。

サーバーの応答:

ジョンソン:

私のrxリクエストは次のとおりです。

私の質問は次のとおりです: 私の json パス (200 から 300 の間のステータス コード) の場合、Event Next を送信し、Event Complete の後に、これがこのシグナルを完了し、最初のシグナル Completes も同様に完了します。しかし、JSON を検証するときにイベント エラーを送信すると、最初のシグナルが完了または失敗しません。これどうやってするの?

ありがとうございました

0 投票する
3 に答える
3715 参照

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

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

ios - Realm オブジェクトを格納する RxSwift 変数

Realm はサポートされている変数の型を明示的に示しているため、RxSwift と Realm を組み合わせることがサポートされているかどうかを理解するのに問題があります。

以下の代わりに可能ですか?

このようなことをするために。

グーグルで調べてみましたが、これを行うための拡張機能やその他のソリューションに関する最新情報は見つかりませんでした。助けをいただければ幸いです。または、正しい方向を指しているだけです。