問題タブ [spring4d]

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

delphi - DelphiでGlobalContainer(Spring4Dフレームワーク)を使用して継承オブジェクトを作成するには?

Spring4D Framework の GlobalContainer を使用して、他から継承したカスタム クラス オブジェクトを作成する際に問題があります。

親クラス:

子孫クラス:

TVSPSeismicSection のオブジェクトを作成しようとする私の試み:

次に、(親クラスの)「Organization」フィールドにアクセスしようとすると、アクセス違反エラーが発生します。

問題は、親クラスに GlobalContainer リゾルバーを使用してフィールドを開始するように指示する方法です。多分 DelegateTo メソッド経由ですが、どうやって?

私が見つけた1つの方法は、次のように子孫クラスのコンストラクターで親フィールドを開始することです:

しかし、これは依存性注入パラダイムに違反しています。追加のクラス (IDirectoryObject) を子孫クラスに含める必要があるからです。

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

delphi - Spring4Dで解決するためのベストプラクティス?

spring4d デモでServiceLocator.GetService<MyType>('Name')は、型を解決するために使用されます。しかし、なぜ使用しないのGlobalContainer.Resolve<MyType>('Name')ですか?このアプローチには利点がありません...

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

delphi - spring4d はローカルに構築されたクラスを解決します

たとえば、次のコードがあるとします。

メソッド ButtonEvent は、Delphi フォームのボタン クリック イベントによって呼び出されます。

今私の質問: クラス TMyClass2 をインスタンス化するより良い方法はありますか? 私の場合、クラス TMyClass1 への挿入は不可能です。TMyClass2 インスタンスの有効期間は ButtonEvent 内のみです。ButtonEvent への次の呼び出しでは、別のインスタンスを使用する必要があります...

私の知る限り、メソッドパラメーターの注入またはローカル変数の注入はSpring4Dでは不可能ですよね?

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

delphi - 地図機能はありますか?

私はちょうどこの関数を書いた:

mapこれは、Haskells (またはfmapliftMなど)とほぼ同等です。

だから私はSpring4Dにこのようなものがすでに存在するのだろうか?

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

delphi - フィールドインターフェースをオブジェクトに注入する方法

オブジェクトにインターフェースを注入したいが、属性の問題が見つからない [Inject]

何が機能していますか。




コンストラクタ TMyButton.Create(AOwner: TComponent) で ServiceLocator をフィールド インジェクションに置き換えたいのですが、これを行う方法が見つかりません。

いくつかの例ですが、うまくいきません。問題がわかりません。


実行時に TMyButton を作成すると、TMyButton の FStorage は nill です。FStorage:= ServiceLocator.GetService; を使用する場合 コンストラクターでは、FStorage が割り当てられます。しかし、ServiceLocator ではなくインジェクションを使用したいと考えています。これが可能であれば。

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

unit-testing - DUnit を使用して Spring4D イベントをモックする方法

DUnit を使用して Spring4d イベントを正常にモックするのに苦労しています。

実際、私はイベントのモックを返すモックをもっとモックしています...

これが基本構造です。

TMyObject にはプロパティ EventContainer があります: IEventContainer

IEventContainer にはプロパティ Event があります: IMyEvent

嘲笑したい

考えられるすべての可能性をテストしました。AV または無効なキャストのいずれかを取得します。以下にソースコードを置いておきます。誰かが私がこれを機能させるのを手伝ってくれたら、それは本当に気の利いたものになるでしょう!