問題タブ [typhoon]

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

ios - Swift での Typhoon 遅延注入

Typhoon DI をいじってみると、LazySingleton スコープが期待どおりに機能していないことに気付きました。より具体的には、次のように TyphoonAssembly を作成しました。

ここで Knight は NSObject であり、validateProperties関数を持っています

アセンブリをアクティブにしてからナイトを取得した後、validateProperties関数を呼び出すと、これらのプロパティがコードで使用されていなくても、常に Name not nil および Horse not nil が出力されます。ここで何かが足りないのですか、それとも単純に遅延注入が Swift の遅延保存されたプロパティと同じように機能しませんか?

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

ios - ビュー コントローラをプッシュするときの循環依存

スコープTyphoonScopeObjectGraphは、コントローラーやビューなど、コントローラーを指すデリゲート プロパティを持つ循環依存関係を持つのに役立つことがわかりました。

そこで、次のシナリオでこれをテストしました。

コントローラー A がコントローラー B をプッシュし、コントローラー B がコントローラー A を指す弱いデリゲートを持つコントローラー C をプッシュします。

コントローラー C には、このデリゲートでメソッドを実行するボタンがあります。

Typhoon がコントローラー C をインスタンス化し、コントローラー A を適切にデリゲートとして設定することを確認しましたが、ボタンを押すとデリゲートが nil に更新されます。

これはアセンブリ コードです。

これは ViewControllerC です。

これはViewControllerAです:

どうしてこれなの?回避策はありますか?

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

ios - 台風がプロパティを注入しない (ストーリーボードなし)

XIB を使用して View Controller に挿入されたプロパティを取得できませんinitWithNibName:bundle:

例:

これは私のアセンブリです:

ViewControllerA コード:

ViewControllerB コード:

ViewControllerC コード:

AppDelegate コード:

私はすでにサンプルをチェックしましたが、それらはこのアプローチとは異なります。私が間違っていることを教えてください。

ありがとう。