// code snippet
interface TypeConfig { }
يجب أن يبدأ اسم واجهة [tslint] بأحرف كبيرة I (اسم الواجهة)
تقترح Microsoft أسماء الواجهة حتى لا تكون مسبوقة بـ I - https://github.com/Microsoft/TypeScript/wiki/Coding-guidelines#names
لاحظ أن هذه هي المبادئ التوجيهية لكتابة المترجم المطبوع عليه نفسه. ليس من المفترض أن يكون دليل أسلوب لأي مشروع مطبوع آخر موجود.
إذا كنت ترغب في اعتماد دليل النمط هذا لمشاريعك ، يمكنك فقط تغيير تكوين القاعدة في tslint.json إلى "interface-name" : [true, "never"]
50 سنتا من عابر سبيل:
"interface-name" : [true, "never-prefix"]
بدلاً من
"interface-name" : [true, "never"]
🙌
حاولت إيقاف تشغيل البادئة "I" عن طريق إضافة اسم الواجهة إلى tslint.json
الافتراضي الذي تم إنشاؤه بواسطة Create React App. ومع ذلك ، لا يبدو أنه يعمل. ربما أضعه في المكان الخطأ؟
{
"extends": [
"tslint:recommended",
"tslint-react",
"tslint-config-prettier"
],
"linterOptions": {
"exclude": [
"config/**/*.js",
"node_modules/**/*.ts"
]
},
"interface-name" : [true, "never-prefix"]
}
لا تهتم ، لقد اكتشفت ذلك:
{
"extends": [
"tslint:recommended",
"tslint-react",
"tslint-config-prettier"
],
"linterOptions": {
"exclude": [
"config/**/*.js",
"node_modules/**/*.ts"
]
},
"rules": {
"interface-name" : [true, "never-prefix"]
}
}
لسبب ما ، "interface-name": [true, "never"]
لا يعمل معي. لكن "interface-name": false
يعمل بشكل جيد
@ vasilev-alex "interface-name": [true, "never-prefix"]
empasis على البادئة أبدًا
ما زلت أتلقى "interface name must start with a capitalized I"
هذا هو tslint.json الخاص بي:
{
"rules": {
"interface-name": [
true,
"never-prefix"
]
},
"extends": [
"tslint:recommended",
"tslint-react",
"tslint-config-prettier"
],
"linterOptions": {
"exclude": [
"config/**/*.js",
"node_modules/**/*.ts",
"coverage/lcov-report/*.js"
]
}
}
ما الخطأ الذي افعله؟
@ offg777 لا شيء واضح. رابط الريبو؟
يبدو التكوين صحيحًا بالنسبة لي - هل أنت متأكد من أنه لا يوجد شيء آخر يتجاوزه؟ القاعدة تعمل بالتأكيد بشكل صحيح بالنسبة لي
ههههههههههه
"يجب أن يبدأ اسم الواجهة بحرف I كبير"
من أين لك هذا الخطأ؟ من IDE الخاص بك أو عند تشغيل CLI؟
وأنا لا أعرف بالضبط القواعد المتتالية لـ tslint ، لكن هل حاولت وضع كتلة "القواعد" أسفل "يمتد"؟
رائعة
هل تدعم eslint ذلك بالفعل؟
ضبط
"rules": {
"interface-name": [
true,
"never-prefix"
]
},
النتائج في
Configuration for rule "interface-name" is invalid
ربما هذه القاعدة موجودة لسبب؟ هل يجب أن يكون لكل واجهة اسم ذي معنى يختلف بوضوح عن فئة التنفيذ؟
هذه فكرة دموية مزعجة لإجبار بقية العالم على اتباع تفضيلاتك - خارج مشروعك الخاص -. يعد اقتحام اصطلاحات التسمية الخاصة بك في أدوات البرمجة خطأ في الشبكة العصبية لمطور المنتج ؛)
الشيء الجيد هو أنه تم إهمال TSLint ولم تعد هذه المشكلة ذات صلة ، إذن! # 4534
التعليق الأكثر فائدة
لا تهتم ، لقد اكتشفت ذلك: