Flex Puremvc: الوسيط لا يسجل
-
25-09-2019 - |
سؤال
يتم إنشاء مكون في وقت التشغيل ويتم إنشاء وسيط وتسجيله. كل شيء على ما يرام.
في عرض منفصل ، يتم إنشاء مثيل آخر لهذا المكون. يتم إنشاء الوسيط ولكن OnRregister () لا يسمى المرة الثانية. لا أعرف ما إذا كان هذا أمرًا طبيعيًا ... ولكن إذا كان الأمر كذلك ، فكيف يمكنني الحصول عليه للاتصال بـ ONREGISTER () في المرة الثانية؟ شكرًا. قون
المحلول
أظن أن اسم الوسيط ليس فريدًا ، وفي هذه الحالة لم يتم تسجيل الوسيط الثاني.
من فئة عرض PureMVC:
public function registerMediator( mediator:IMediator ) : void
{
// do not allow re-registration (you must to removeMediator fist)
if ( mediatorMap[ mediator.getMediatorName() ] != null ) return;
...
لمزيد من المساعدة في كيفية تعيين اسم فريد من نوعه ، سيكون من الجيد رؤية المزيد من الطريقة التي تحاول بها إنشاء وتسجيل وسيطك.
نصائح أخرى
شكرا يا مايك !!! بعد النشر هنا ، قمت ببعض الأبحاث وتوصلت إلى نفس الاستنتاج. لم يكن لدي رمز مصدر puremvc في المشروع الذي أعمل عليه ، وبما أن المشروع يستخدم puremvc v.1.0 ، لم أكن أعرف ما إذا كان لا يزال بإمكاني الحصول على الكود المصدري لذلك. سيتم ترقيتها إلى v.2 قريبا.
على أي حال ، قمت بتعيين اسم فريد للوسيط وقمت بتعيين هذا الاسم الفريد كمعرف للمكون. إليكم الرابط إلى المكان الذي ساعدني فيه التصحيح:
http://forums.puremvc.org/idex.php؟topic=596.0
نأمل أن يكون مفيدًا لـ Puremvc Noobie (مثلي) في المستقبل. قون