angus
(Angus McLeod)
24 سبتمبر 2020، 11:13م
2
الطريقة التي تعاملتُ بها مع هذا في الماضي هي حزم الأزرار في دالة مساعدة HTML، والتي ستُظهر كود HTML الخام في القوالب الخام، ويمكنك بعد ذلك إدراجها عبر منفذ إضافة خام. إليك مثال على ذلك:
https://github.com/paviliondev/discourse-topic-previews/blob/master/assets/javascripts/discourse/helpers/preview-helpers.js.es6#L8
يتم التعامل مع نقر الزر في مكون عنصر قائمة الموضوع، على سبيل المثال:
https://github.com/paviliondev/discourse-topic-previews/blob/master/assets/javascripts/discourse/initializers/preview-edits.js.es6#L332
قد يكون لدى @merefield بعض الأفكار أيضًا
أيضًا، من المرجح أنك ستحتاج إلى استخدام هيكل مجلدات جافا سكريبت الخاص بالموضوع بدلاً من إضافة سكريبتات إلى header.html. انظر:
يمكن تقسيم سمات جافاسكريبت (javascript) المعقدة إلى ملفات متعددة، للحفاظ على تنظيم جيد.
لاستخدام هذه الوظيفة، ما عليك سوى إضافة ملفات إلى المجلد /javascripts في دليل السمة الخاص بك. لا يمكن تعديل هذه الملفات من واجهة مستخدم Discourse، لذا يجب عليك استخدام Theme CLI أو source the theme from git (استيراد السمة من git).
يتم التعامل مع ملفات جافاسكريبت تمامًا كما يتم التعامل معها في النواة/الإضافات (core/plugins)، لذا يجب عليك اتباع نفس هيكل الملف/المجلد. يتم تحميل ملفات السمة بعد النواة/الإضافات،…