يضع المكون الإضافي i-frame في Discourse و يمكنك العثور عليه هنا
أحافظ عليه محدثًا قدر الإمكان لأحدث إصدار، لذا جاء التغيير المكسور مؤخرًا. نحن حاليًا نستخدم الإصدار 3.3.0.beta1-dev.
في وحدة التحكم، أحصل على 3 رسائل خطأ تبدو كالتالي:
docuss.js:225 Uncaught (in promise) ReferenceError: Ember is not defined
at docuss.js:225:1
على الأرجح تم إزالة كائن Ember هذا من واجهة برمجة تطبيقات Discourse في إصدار حديث من Discourse، لذا يأتي هذا الخطأ بعد ترقية Discourse التي تؤثر على تلك الكائنات.
إليك كل الإصلاحات التي قمت بها:
التغيير 1
assets\javascripts\discourse\initializers\docuss.js.es6
السطر 232
قديم:
const afterRender = res =>
new Promise(resolve => {
// @ts-ignore
Ember.run.schedule('afterRender', null, () => resolve(res))
جديد:
import { schedule } from '@ember/runloop'
const afterRender = res =>
new Promise(resolve => {
schedule('afterRender', null, () => resolve(res))
})
التغيير 2
assets\javascripts\discourse\lib\DcsIFrame.js.es6
السطر 858
قديم:
const afterRender = res =>
new Promise(resolve => {
Ember.run.schedule('afterRender', null, () => resolve(res))
})
جديد:
import { schedule } from '@ember/runloop'
const afterRender = res =>
new Promise(resolve => {
schedule('afterRender', null, () => resolve(res))
})
التغيير 3
assets\javascripts\discourse\lib\onDidTransition.js.es6
السطر 239
قديم:
const afterRender = res =>
new Promise(resolve => {
Ember.run.schedule('afterRender', null, () => resolve(res))
جديد:
import { schedule } from '@ember/runloop'
const afterRender = res =>
new Promise(resolve => {
schedule('afterRender', null, () => resolve(res))
لقد أدى ذلك إلى مسح جميع رسائل الخطأ في وحدة التحكم ولكنه أنشأ سلسلة من الرسائل الجديدة:
Discourse v3.3.0.beta1-dev — https://github.com/discourse/discourse/commits/4c7d58a883 — Ember v5.5.0
app.js:197 Uncaught ReferenceError: Ember is not defined
at s.callback (docuss.js:210:1)
at s.exports (loader.js:106:1)
at requireModule (loader.js:27:1)
at y (app.js:171:18)
at w (app.js:194:19)
at app.js:157:29
at e.start (app.js:51:5)
at HTMLDocument.<anonymous> (start-app.js:5:7)
at discourse-boot.js:20:12
at discourse-boot.js:1:1
إليك منصة مباشرة مع تشغيل المكون الإضافي في حال كان مفيدًا
هل هذه المشكلة مألوفة لأي شخص واجه مشاكل مع تغيير كائنات واجهة برمجة تطبيقات Ember. أي اقتراحات حول كيفية إصلاحها ستكون محل تقدير كبير.