Jshint: خصائص "حيز" الكائن (اقتراح المرحلة 2) غير مدعوم

تم إنشاؤها على ٣٠ يوليو ٢٠١٦  ·  27تعليقات  ·  مصدر: jshint/jshint

لدي شيء مثل هذا

  args: {
    ...connectionArgs,
  },

و jshint الشكوى منه
xpected '}' to match '{' from line 167 and instead saw '...'.

ما الذي يجب علي إضافته إلى ملف .jshintrc للسماح بالتدمير؟

Has PR P1 Proposal

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

+1 لدعم هذا. إنه مستخدم بالفعل على نطاق واسع في React / Redux

ال 27 كومينتر

JSHint لا يدعم حاليا هذه الميزة اللغوية المقترحة. لقد وصلت مؤخرًا إلى "المرحلة الثانية" في عملية التقييس ، على الرغم من ذلك ، فنحن مهتمون بإضافة دعم في إصدار مستقبلي.

أوه شكرا لك jugglinmike ، أي فكرة حول كيف يمكنني جعل jshint يتجاهلها على الأقل؟

بالتأكيد ، سترغب في استخدام التوجيهات المضمنة jshint ignore:start و jshint ignore:end :

  args: {
+   // jshint ignore:start
    ...connectionArgs,
+   // jshint ignore:end
  },

لقد قمت بتحديث عنوان المشكلة لوصف طلب الميزة بشكل أكثر دقة.

سيكون من الرائع الحصول على دعم JSHint لهذا الأمر ، لأنه الآن المرحلة 3

+1 لدعم هذا. إنه مستخدم بالفعل على نطاق واسع في React / Redux

+1. هل هناك من يعمل على ذلك؟

+1 لإنجاز هذا. شكرا يا شباب!

+1 سيستمتع بهذا كثيرًا

+1

+1

تم دمج دعم ميزة اللغة هذه في فرع الميزة v2.10.0 (عبر gh-3150) ، لذلك نتوقع تضمينه في الإصدار الثانوي التالي من JSHint. سأقوم بتسمية هذه المشكلة على أنها "لها علاقات عامة" لتوصيل هذه الحالة بشكل أفضل.

قبل أيام قليلة أعلنوا:

تم دمج دعم ميزة اللغة هذه في فرع الميزة v2.10.0 (عبر gh-3150) ، لذلك نتوقع تضمينه في الإصدار الثانوي التالي من JSHint. سأقوم بتسمية هذه المشكلة على أنها "لها علاقات عامة" لتوصيل هذه الحالة بشكل أفضل.

لكن هذه هي الطريقة التي أصلحتها:

أضف كلا من esnext و esversion إلى ملفك .jshintrc :

...
"esnext": true,
"esversion": 6,
...

هذا هو ملفي .jshintrc كاملاً:

{
    "mocha": true,
    "freeze": true,
    "bitwise": false,
    "browserify": true,
    "strict": true,
    "worker": true,
    "scripturl": true,
    "latedef": "nofunc",
    "onevar": true,
    "node": true,
    "maxstatements": 25,
    "futurehostile": true,
    "noarg": true,
    "unused": true,
    "esnext": true,
    "esversion": 6,
    "eqeqeq": true,
    "nocomma": false,
    "devel": true,
    "maxdepth": 6,
    "jquery": true,
    "browser": true,
    "debug": true,
    "maxparams": 5,
    "undef": true,
    "globalstrict": true,
    "maxcomplexity": 20,
    "typed": true,
    "nonew": true,
    "forin": false,
    "shadow": true,
    "-W018": false
}

+1 لا يمكنه الانتظار حتى يتم إصدار v2.10.0. أحسنت! هل هناك أي جدول زمني لـ v2.10.0؟

عند تشغيل [email protected]

عندما يكون لدي كلاهما

{
  "esnext": true,
  "esversion": 6,
}

أحصل على الخطأ التالية:

Incompatible values for the 'esversion' and 'esnext' linting options. (0% scanned).

نفس الشيء هنا يتعلق بـ: Incompatible values for the 'esversion' and 'esnext' linting options. (0% scanned).

ما هو المخطط الزمني لـ 2.10.0 ؟

أحصل أيضًا على Incompatible values for the 'esversion' and 'esnext' linting options حتى بعد التثبيت مباشرة من الفرع v2.10.0 على GitHub. يختفي الخطأ عندما أحذف esversion تمامًا. هذا مقتطف من .jshintrc الآن:

"esnext": true,
"unstable": {
  "objspreadrest": true
},

فكرة هذا الخطأ هي في الحقيقة "لا تستخدم كل من" esversion "و" esnext "(أو" es3 "أو" es5 ") ، afaiu.

يمكن أن يكون النص أكثر وضوحًا ، ولكن يبدو أن الهدف من الخطأ هو "إرسال التحذيرات حتى نتمكن في النهاية من إزالة هذه الخيارات ويستخدم الأشخاص" esversion "فقط).

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

chaddjohnson هذا الفرع متاح لتعزيز الشفافية ولتمكين التعاون. يمكنك بالطبع تشغيل أي رمز في هذا المشروع ، ولكن يرجى تفهم أننا لا نؤيد استخدام رمز لم يتم إصداره لأننا لا نملك النطاق الترددي لدعمه.

caitp أفضل عدم السماح بالغموض بدلاً من محاولة تفسيره. سأشارك المزيد من التفاصيل ردًا على طلب السحب الخاص بك.

https://github.com/jshint/jshint/issues/2991#issuecomment -349636400

[jshint] Incompatible values for the 'esversion' and 'esnext' linting options. (0% scanned). (E059)

https://github.com/jshint/jshint/issues/2991#issuecomment -396695974

[jshint] Bad option: 'unstable'. (E001)

jugglinmike إذن هل تقصد القول أنه من المستحيل الآن استخدام jshint؟

إطلاقاًNatoBoram. أنا لا أشجع استخدام النسخ غير المنشورة من المشروع.

هممم كما وجد أي شخص حلاً لـ:

قيم غير متوافقة لخيارات الفحص "esversion" و "esnext". (0٪ ممسوحة ضوئيًا). (E059)

أي قرار من هذا؟ متى ستدعم jshint أحدث الصيغ؟

اي كلمة في هذا؟ إنني أقدر حقًا هذه الأداة ، ولكن الحاجة إلى إلقاء تعليقات "تجاهل" على نصوصي هي الأسوأ.

هل سيكون لدى شخص ما الوقت لإلقاء نظرة على هذا؟ أنا أقوم بتشغيل 2.9.7 وهو أحدث إصدار من jshint ، داخل محرر Atom ، ورمز تطبيق React Native الخاص بي مليء بأخطاء بناء الجملة حول عامل الانتشار في الكائنات الحرفية. إعداد "esnext": true في .jshintrc لا يساعد. ترفض الأداة العمل عند تعيين كل من "esnext": true و "esversion": 6.

إذا كان لدى أي شخص حل بديل يعمل الآن ، فهل يمكنك نشره من فضلك؟

سيكون دعم هذه الميزة متاحًا في الإصدار 2.10.0 من JSHint والذي نتوقع إصداره مبكرًا بعد ذلكأسبوع . سأضع علامة على هذه المشكلة على أنها "تم حلها" بمجرد نشرها.

لقد أصدرنا للتو دعمًا لراحة / انتشار الكائن في الإصدار 2.10.0 من JSHint .

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