2

コンポーネントは実行時に作成され、メディエーターが作成および登録されます。すべては順調です。

別のビューで、そのコンポーネントの別のインスタンスが作成されます。メディエーターは作成されますが、onRegister()は2回目に呼び出されません。これが正常かどうかはわかりませんが、正常な場合は、2回目にonRegister()を呼び出すにはどうすればよいですか?ありがとう。:)

4

2 に答える 2

4

メディエーター名が一意ではないと思われます。その場合、2番目のメディエーターは登録されていません。

PureMVC Viewクラスから:

public function registerMediator( mediator:IMediator ) : void
{
   // do not allow re-registration (you must to removeMediator fist)
   if ( mediatorMap[ mediator.getMediatorName() ] != null ) return;
   ...

メディエーターに一意の名前を割り当てる方法の詳細については、メディエーターをインスタンス化して登録しようとしている方法をもう少し見ておくとよいでしょう。

于 2010-02-04T01:31:52.537 に答える
1

ありがとう、マイク!!! ここに投稿した後、さらにいくつかの調査を行い、同じ結論に達しました。私が取り組んでいるプロジェクトには pureMVC ソース コードがありませんでした。プロジェクトは pureMVC v.1.0 を使用しているため、そのソース コードをまだ入手できるかどうかわかりませんでした。まもなく v.2 にアップグレードされます。

とにかく、メディエーターに一意の名前を割り当て、その一意の名前をコンポーネントの ID として割り当てました。デバッグに役立った場所へのリンクは次のとおりです。

http://forums.puremvc.org/idex.php?topic=596.0

願わくば、将来、他の pureMVC 初心者 (私のような) に役立つことを願っています。:)

于 2010-02-05T17:32:22.637 に答える