أنا أستخدم highcharts-ng مع highcharts.js
في كل مرة أقوم بتشغيل الرسم البياني أحصل على هذا الخطأ:
angular.js:13920 TypeError: Cannot read property 'pos' of undefined
at https://code.highcharts.com/stock/highstock.js:518:422
at Array.forEach (<anonymous>)
at a.each (https://code.highcharts.com/stock/highstock.js:27:466)
at F.<anonymous> (https://code.highcharts.com/stock/highstock.js:518:396)
at F.a.(anonymous function) [as getPlotLinePath] (https://code.highcharts.com/stock/highstock.js:19:437)
at a.Tick.renderGridLine (https://code.highcharts.com/stock/highstock.js:113:264)
at a.Tick.render (https://code.highcharts.com/stock/highstock.js:115:472)
at F.renderTick (https://code.highcharts.com/stock/highstock.js:159:427)
at https://code.highcharts.com/stock/highstock.js:160:448
at Array.forEach (<anonymous>)
أيه أفكار؟
مرحبًا @ Lir10
هل يمكنك الاتصال بدعمنا؟ راجع: https://www.highcharts.com/support
نستخدم مشكلات github لتقارير الأخطاء. في حالتك ، لست متأكدًا مما إذا كان هذا خطأ في Highstock أو مخطط خاطئ أو خطأ في وحدة Highcharts-ng.
أيه أفكار؟
فكرة واحدة فقط: يشير الخطأ إلى مشكلة علامات التجزئة xAxis / yAxis ، لذلك سأحاول إزالة الخيارات المحددة هناك ومعرفة ما إذا كان هذا يحل المشكلة. إذا كانت الإجابة بنعم ، فالرجاء إعادة إنشاء المشكلة في jsfiddle ، بدون highcharts-ng للتأكد من وجود خطأ في Highstock lib.
مرحبًا @ pawelfus ،
لقد كنت محقًا - كانت المشكلة في علامات xAxis
إغلاق القضية
@ Lir10 هل لي أن أسأل ما هي المشكلة؟ لدي نفس المشكلة وأحاول تحديد السبب. شكر!
تضمين التغريدة
أود أن أقترح القيام بذلك:
أيه أفكار؟
فكرة واحدة فقط: يشير الخطأ إلى مشكلة علامات التجزئة xAxis / yAxis ، لذلك سأحاول إزالة الخيارات المحددة هناك ومعرفة ما إذا كان هذا يحل المشكلة. إذا كانت الإجابة بنعم ، فالرجاء إعادة إنشاء المشكلة في jsfiddle ، بدون highcharts-ng للتأكد من وجود خطأ في Highstock lib.
@ Lir10 ، هل يمكنك وصف مكان المشكلة بالضبط ، إذا كنت لا تزال تتذكر؟ أواجه نفس المشكلة ، لكن لا يمكنني ملاحظة الظروف ، إنها تحدث بشكل عشوائي ، وللأسف pawelfus لا تساعد كثيرًا.
مرحبًا davletovalmir
إذا كنت ستتمكن من توفير طريقة مستقرة لإعادة إنشاء المشكلة ، فيرجى مشاركة رابط للعرض التوضيحي أو الملفات المطلوبة.
KacperMadej ، لم أتمكن من العثور على السبب الجذري حتى الآن ، ولكن هذا ما لجزء من الشفرة المبهمة أدناه):
step
داخل تلك الكتلة:d.group.animate({
scaleY: 1
}, G(z(d.options.animation), {
step: function(a, b) {
h[f] = v + b.pos * (c.pos - v); /// <-- b is undefined
d.group.attr(h)
}
}))
step
هنا ، كما تلاحظ ، مع السياق ، ولكن بدون a
و b
args:animate: function(e, q, b) {
q = a.animObject(y(q, this.renderer.globalAnimation, !0));
y(m.hidden, m.msHidden, m.webkitHidden, !1) && (q.duration = 0);
0 !== q.duration ? (b && (q.complete = b),
h(this, e, q)) : (this.attr(e, null, b),
q.step && q.step.call(this)); /// <-- function called without arguments
return this
}
animate
هي جزء من SVGElement
وتم استدعاؤها داخل الوظيفة render
.لم يكن لدي الوقت الكافي لفحص هذه القضية بعمق. آمل أن يكون ما وجدته مفيدًا لك.
ملاحظة: يتم أيضًا إرفاق جزء من لقطة الشاشة مع وجود خطأ في وحدة التحكم. لست متأكدًا مما إذا كان سيساعد كثيرًا ، ولكن من يدري :)
تضمين التغريدة
شكرًا على المعلومات - يكفي أن أعيد إنشاء المشكلة.
إليك حل بديل لإصلاح التعليمات البرمجية:
https://jsfiddle.net/BlackLabel/L6x08jeq/1/
يمكنك تطبيق إصلاح الكود من العرض التوضيحي في التعليمات البرمجية الخاصة بك (مثل الوحدة النمطية - بعد ملف Highcharts الرئيسي). إذا كان لديك متسع من الوقت ، فيرجى التحقق مما إذا كان هذا يحل الخطأ في تطبيقك.
لمعلوماتك: غير مصغر ، يتوفر رمز قابل للقراءة البشرية للملفات ذات الصلة بـ Highcharts باستخدام ملفات ذات .src.js
- على سبيل المثال highcharts.src.js
.
عندما يتم عرض المخطط لأول مرة ، وبشكل أساسي عندما لا يكون التركيز على المتصفح
هذا شيء يجب التحقق منه - قد يكون هذا مرتبطًا بميزة حديثة تمنع الرسوم المتحركة لبطاقات / نوافذ المتصفح غير المركزة (لأنه لا داعي للتحريك عندما لا يشاهد أحد).
تمكنت من الحصول على الرمز الصحيح المقابل في رمز غير مصغر. المفتاح هنا هو استخدام نوع سلسلة العمود.
عرض توضيحي: https://jsfiddle.net/BlackLabel/L6x08jeq/
خطوات:
_مذكرة داخلية:_
H.pick((fx && fx.pos), 1)
بدلاً من fx.pos
على حل المشكلة ، ولكن الاختبار مطلوب للتأكيد.
KacperMadej ، شكرًا ، هذا منطقي. إصلاح يعمل :)
هل يمكنك من فضلك تقدير موعد إصدار هذا الإصلاح؟
تضمين التغريدة
سيكون الإصلاح في العلاقات العامة هذا الأسبوع ويجب إصداره مع إصدار Highcharts التالي.
في هذه الأثناء:
سبب المشكلة هو عدم تمرير الدالة animate
الوسيطات المناسبة إلى step
عندما تجاوزت الرسوم المتحركة ، لذلك أصلحتها هناك بدلاً من ذلك.
KacperMadej كم من الوقت حتى الإصدار التالي؟ لقد انتقلنا للتو من الرسوم البيانية الزاويّة ونود فقط تثبيت الإصدار مع الإصلاح قبل دمج فرع الميزات لدينا ، بدلاً من البدء برمز إضافي لإصلاح خطأ ، لن يكون موجودًا بعد أيام قليلة.
الإصدار التالي (7.0.3) مجدول بنهاية هذا الأسبوع
هل هناك ETA محدث؟
اختبارات الانحدار جارية. بمجرد حل جميع المشكلات ، سيتم إصدار إصدار جديد - أتوقع إصدارًا جديدًا قريبًا ، بحد أقصى بضعة أيام.
تم إصداره الآن yhoiseth
حلو! شكرا لإخباري 🙂
لسبب ما ، لم يخطرني GitHub ، على الرغم من أنني "أشاهد الإصدارات" لهذا المستودع 🤔
لا أعرف سبب عدم تلقيك للإشعار ، ولكن لا يزال بإمكانك الاشتراك في قائمتنا البريدية: https://www.highcharts.com/blog/download/
التعليق الأكثر فائدة
الإصدار التالي (7.0.3) مجدول بنهاية هذا الأسبوع