私が今していること:
多くの場合、ビュー コンポーネントの複数のインスタンスが、アプリケーション内の複数の場所で使用されます。これを行うたびに、同じメディエーターを別の名前で登録します。
通知がディスパッチされると、次のようにメディエーターの名前を通知の本文に添付します。
var obj:Object = new Object();
obj.mediatorName = this.getMediatorName();
obj.someParameter = someParameter;
sendNotification ("someNotification", obj);
次に Command クラスで、通知本文を解析し、mediatorName をプロキシに格納します。
var mediatorName:String = notification.getBody().mediatorName;
var params:String = notification.getBody().someParameter;
getProxy().someMethod(params, mediatorName);
リターン通知では、mediatorName が一緒に返されます。
var obj:Object = new Object();
obj.mediatorName = mediatorName;
obj.someReturnedValue= someReturnedValue;
sendNotification ("someReturnedNotification", obj);
「someReturnedNotification」を監視している可能性のある複数のメディエーターでは、handleNotification() で if ステートメントを実行して確認します。
if obj.mediatorName == this.getMediatorName
true を返します。そうであれば情報を処理し、そうでなければ処理しないでください。
私の質問は: これは Multiton PureMVC を使用する正しい方法ですか? 私の直感はそうではありません。返された情報でコンポーネントを更新する必要があるかどうかを確認するためにメディエーターの名前をテストする必要がないように、アプリケーションを設計するためのより良い方法があると確信しています。
誰かが助けて、より良い方法についての方向性を教えてくれませんか?
ありがとう。