ما هي الدالة الصحيحة لتهيئة الأشياء عند فتح Composer؟

لدي دالة لإعداد كائن يسمى project_task في كل مرة يتم فيها فتح محرر الكتابة.

لقد قمت بذلك بهذه الطريقة لأنني رأيتها في إضافة الأحداث:

https://github.com/paviliondev/discourse-events/blob/master/assets/javascripts/discourse/connectors/composer-fields/composer-controls-event.js.es6

المشكلة التي أواجهها الآن هي أن كائناتي لا تكون موجودة دائمًا. يبدو أن الدالة لا تعمل دائمًا عند تغيير محرر الكتابة. إذا قمت بالتبديل ذهابًا وإيابًا بين مسودات مختلفة لمواضيع مختلفة، فلا يتم استدعاؤها مرة أخرى، وبالتالي فإن الكود المعتمد على وجود الكائن لا يعمل بعد الآن.
سؤالي هو: أي دالة أحتاج إلى استخدامها إذا أردت إعداد هذا الكائن في أي وقت يتم فيه فتح محرر الكتابة مع موضوع مختلف أو عند فتحه لأول مرة؟ أريد التأكد من أن هذا الكائن موجود دائمًا.

تعديل:
هكذا قمت بحل المشكلة مؤقتًا

لكن هذا لا يزال غير مثالي، لأنه يجبرنا على التخلي عن المسودة عند الضغط على تعديل موضوع آخر. أحيانًا بدون تحذير. (ربما يكون ذلك لأن حفظي للمسودات لا يعمل بنسبة 100% بشكل مثالي أو ربما ضغطت بسرعة كبيرة ولم يتم حفظ المسودة بعد)
أعتقد أن هذا هو السلوك الافتراضي لمحرر الكتابة في الوقت الحالي. لقد تأكدت في هذا المنتدى من أنه يمكنك فقط وجود مسودة تعديل واحدة في وقت واحد.


عندما اضغط على موضوع جديد في هذا المنتدى، فإنه يسمح لي بحفظ الأشياء، لذا يبدو أن هناك خيارًا لوجود مسودة تعديل واحدة ومسودة جديدة واحدة.

لقد وجدت هذا الموضوع مرة أخرى:

يبدو أن هذا هو السلوك المقصود لمحرر الكتابة.
بالنسبة لي، يبدو هذا بديهيًا جدًا، وهذا هو السبب في أنني اعتقدت أنه خطأ. لم ألاحظ رسالة الخطأ في البداية عندما أجبرني على التخلي أو الإلغاء، لأنه لم يخطر ببالي أن هناك حدًا للمسودات المفتوحة.

إعجابَين (2)