問題タブ [reactive-cocoa-3]
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.
ios - ReactiveCocoa v3 および Swift 1.2 を使用した ios ViewModel
バージョン 3 の ReactiveCocoa の使用に問題があります。ログイン ビュー コントローラー用のビュー モデルを構築したいと考えています。私のView Controllerには、パスワードテキストフィールド用のアウトレットがあります:
ビューモデルには、パスワードであるテキストのプロパティがあります
問題は、それをどのように結合するかです。テキスト フィールドから SignalProducer を取得できます。
しかし、それを emailText プロパティにバインドする方法は? SignalProducer はSignal ではないというドキュメントを読みましたが、現在は作成できます。メソッド start() がありますが、パラメーターとして Sink を使用するため、現時点では設計について少し混乱しています。emailText をシンクにするべきではありませんか?
swift - KVO コードを RAC3 に置き換えて、既存のモデルを維持するにはどうすればよいですか?
Swift コードを改善するために ReactiveCocoa を検討しています。出発点として、ラベルのテキストをプロパティの変換された値にバインドしたいと思います。基本的に、いくつかの KVO コードを置き換えたいと考えています。したがって、次の変数があります。
モデルは Objective-C で開発されているため、MyModel
次のようになります。
したがって、私はこのようなことをしたいと思います:
ただし、これは明らかに機能しません。問題にどのようにアプローチすればよいですか?また、KVO は通常のモデル プロパティでどのように実現されるのでしょうか。
このトピックに関する同様の投稿をすでに見つけました。そこで受け入れられた答えは、ViewModels を使用することを提案しています。ただし、既存の NSManagedObject モデルを ViewModel に置き換える代わりに、XCode を介してモデルを管理し、CoreData を介して保存したいので、モデルを保持したいと考えています。それとも、これはViewModelでも何とか可能ですか? 私は何か重要なものを見逃していますか?
reactive-cocoa-3 - MutableProperty のバインドに問題があるシグナルへRAC 3.0 を使用
したがって、この可変プロパティを文字列シグナルにバインドしようとしています。
私の理解では、型はこの関数シグネチャと一致します。
それでも、コンパイラは使用する演算子について混乱しているようで、次のエラーを出力します。
私の意見では、型はチェックアウトしているようですが、コンパイラによるとではありません...このバインドを解決する方法はありますか?
ios - ReactiveCocoa 3 および ReactiveCocoa 4 でのマルチキャスト
SignalProducer<AnyObject?, NSError>
a を返す関数があり、プロデューサーを multiple にバインドしたいとしましょうMutableProperty<String>
。したがって、次のようなものです。
自分の機能 (ネットワーク関連のものなど) が複数回実行されるのを避けるために、マルチキャストを使用する必要があります。CHANGELOGからわかる限り、これにstartWithSignal
使用する演算子です。ただし、宣言的な方法でこれを行う方法がわかりません。
したがって、1 つのアプローチは、 のクロージャでバインディングを作成することですstartWithSignal
。
ただし、NSError
パーツを削除する必要があるため、これは明らかに失敗します。Signal
(の反対に)を与えているため、 ( RAC4 では、RAC3 では)SignalProducer
は使用できません。どうすれば私たちのためにこれを行うことができるのですか?最後に、これが RAC3/RAC4 でマルチキャストを処理する適切な方法であるかどうかさえ確信が持てませんか?flatMapError
catch
mapError
どんな助けでも大歓迎です。
ios - Swift の予想される型 Array<_>
Swift 2 で UITableView RAC3 Binding ヘルパーを作成しようとしています。
シグネチャを持つバインディング ヘルパーを初期化しようとしていますinit(tableView: UITableView, sourceSignal: SignalProducer<[T], NoError>, reuseIdentifier: String, selectionCommand: (() -> Void)? = nil)
私のコードはself.bindingHelper = TableViewBindingHelper<PostCellViewModel>(tableView: tableView, sourceSignal: viewModel.posts.producer, reuseIdentifier: R.reuseIdentifier.contactReuseIdentifier.identifier)
でコンパイラ エラーが発生し、sourceSignal: viewModel.posts.producer
意味Cannot convert value of type 'SignalProducer<[PostCellViewModel], NoError>' (aka 'SignalProducer<Array<PostCellViewModel>, NoError>') to expected argument type 'SignalProducer<[_], NoError>' (aka 'SignalProducer<Array<_>, NoError>')
がありません...
を期待していると言っていSignalProducer<[_], NoError>
ます。_ は、渡すタイプを気にしないことを意味すると思いましたが、その配列を渡そうとするPostCellViewModel
と失敗しますか?
ios - 戻り値の型が CGFloat の場合に ReactiveCocoa を使用して sendKeypath を使用する方法
エラーログは次のとおりです。
そして、タイプがfloat、intなどの値に反応する別の方法があれば、それを受け入れると思います.