مرحبًا
لقد قمنا بكتابة كود JavaScript مخصص في أحداث واجهة برمجة التطبيقات الخاصة بـ Discourse مثل onAppEvent و decorateWidget و onPageChange، وما إلى ذلك. تعمل أحداث واجهة برمجة التطبيقات المذكورة أعلاه بشكل صحيح على صفحات Discourse. لكن هذه الأحداث فشلت في تنفيذ السكربتات على صفحة “OOPS”. لذا حاولنا إنشاء حدث واجهة برمجة تطبيقات خاص بـ Discourse باستخدام الكود أدناه للتنفيذ:
<script type="text/discourse-plugin" language="javascript">
if (!('Discourse' in window)) {
window.Discourse = {};
}
if ('Discourse' in window && !('_registerPluginCode' in window.Discourse)) {
// اجعل هذا دالة فارغة (noop)
window.Discourse._registerPluginCode = function() {};
// سكريبتاتنا
}
</script>
عند تجربة السكربت أعلاه، حصلت على الخطأ التالي: “Uncaught TypeError: Cannot read property ‘lookup’ of undefined”. لا أعرف سبب فشله في جلب السمات (themes) من Discourse.
راجع لقطة الشاشة أدناه:
كيف يمكن تجاوز الخطأ أعلاه لتنفيذ السكربتات المخصصة على صفحة OOPS؟
