2010-02-04 47 views
2

組件在運行時創建並且調解器被創建並註冊。一切都很好。Flex PureMVC:調解器未註冊

在單獨的視圖中,創建了該組件的另一個實例。介體已創建,但onRegister()不會在第二次調用。我不知道這是否正常......但如果是這樣,我怎麼才能第二次調用Register()呢?謝謝。 :)

回答

4

我懷疑中介名稱不唯一,在這種情況下,第二個中介沒有註冊。

從PureMVC的View類:

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

對於如何分配調解的唯一名稱更多的幫助,這將是很好看的多一點,你是如何試圖實例和註冊調解員。

1

謝謝,邁克!在發佈後,我做了更多的研究,並得出了相同的結論。我正在處理的項目中沒有pureMVC源代碼,並且由於該項目使用的是pureMVC v.1.0,所以我不知道是否仍然可以獲取源代碼。它會很快升級到v.2。

無論如何,我爲介體分配了一個唯一的名稱,並將該唯一名稱指定爲組件的ID。這裏是鏈接到它幫我調試:在未來

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

希望,這將是對其他PureMVC的noobie有用的(比如我)。 :)

+1

您當然可以從PureMVC SVN存儲庫獲取您的版本的源代碼:http://svn.puremvc.org/PureMVC_AS3/tags/ – 2010-02-09 20:26:26