Ember.js: أخطاء في "transferTo" منذ الترقية إلى 3.0.0

تم إنشاؤها على ٢٦ مارس ٢٠١٨  ·  3تعليقات  ·  مصدر: emberjs/ember.js

لقد قمت بترقية اثنين من المشاريع إلى 3.0.0 الآن ، وبينما كان أحدهما على ما يرام ، فإن الآخر يلقي أخطاء كلما اتصلت بـ transitionTo ، مثل

router.js:1011 Uncaught Error: More context objects were passed than there are dynamic segments for the route: projects
    at NamedTransitionIntent.applyToHandlers (router.js:1011)
    at NamedTransitionIntent.applyToState (router.js:940)
    at Router.getTransitionByIntent (router.js:1229)
    at Router.transitionByIntent (router.js:1348)
    at doTransition (router.js:1947)
    at Router.transitionTo (router.js:1418)
    at Class._doTransition (router.js:561)
    at Class.transitionTo (routing.js:18)
    at session.save.then.s (session.js:104)
    at tryCatcher (rsvp.js:215)

يبدو أن المشكلة في applyToHandlers :

var objects = this.contexts.slice(0);
// ...
if (objects.length > 0) {
  throw new Error('More context objects were passed than there are dynamic segments for the route: ' + targetRouteName);
}

من خلال النظر إليه باستخدام مصحح الأخطاء ، يبدو أنه يمر مرتين لسبب ما ، وفي التمرير الأول objects هو [] (كما يجب أن يكون حيث لا توجد مقاطع ديناميكية هنا) ولكن على والثاني هو [undefined] الذي يفشل في التحقق من الطول.

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

Needs Reproduction

التعليق الأكثر فائدة

القليل من البحث واكتشفت أن هذا يحدث فقط في الخدمات التي استخدمت فيها خدمة التوجيه الخاصة: routing: service('-routing') .

يؤدي استبدالها بـ router: service() إصلاح مشكلتي ولكن هل يوجد في أي مكان يتم فيه توثيق ذلك؟ كان لدي انطباع بأن خدمة الموجه العام ما زالت آتية.

ال 3 كومينتر

حسنًا ، يبدو أنه من المحتمل أن يكون مرتبطًا بإعدادك (لم ير هذا الأمر من قبل الآخرين) ، هل يمكنك محاولة عزله في تطبيق تجريبي أصغر لتسهيل تعقبنا؟

القليل من البحث واكتشفت أن هذا يحدث فقط في الخدمات التي استخدمت فيها خدمة التوجيه الخاصة: routing: service('-routing') .

يؤدي استبدالها بـ router: service() إصلاح مشكلتي ولكن هل يوجد في أي مكان يتم فيه توثيق ذلك؟ كان لدي انطباع بأن خدمة الموجه العام ما زالت آتية.

artcommacode نعم ، تم الإعلان عن ذلك في المنشور حول إصدار 2.15

إغلاق هذا بعد ذلك.

شكرا لك!

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات