يوجد حاليًا ثلاثة أماكن يجب أن أقوم بتكوين التجاهل فيها لتحذيرات a11y الخاصة بـ svelte:
lua
lspconfig.svelte.setup{
cmd = { "yarn", "svelteserver", "--stdio" };
on_attach = on_attach;
settings = {
svelte = {
plugin = {
svelte = {
compilerWarnings = {
["a11y-no-onchange"] = "ignore"
}
}
}
}
}
}
svelte-check ، مما يجعل package.json
يبدو قبيحًا عند تكوينه وهذا هو المكان الوحيد لتكوينه
{
"val": "svelte-check --compiler-warnings a11y-no-onchange:ignore",
"validate": "yarn val --threshold warning && yarn tsc --noEmit"
}
eslint
settings: {
'svelte3/ignore-warnings': ({ code }) => code === 'a11y-no-onchange',
// ...
},
أود تكوينه في مكان واحد: svelte.config.js
. لا يمكن تجنبه بسبب svelte-preprocess
وأيضًا هذه الأدوات تقرأه على أي حال مقابل svelte-preprocess
، فلماذا لا تستخدمه مقابل onwarn
؟
أيضًا في الوضع الحالي لا يمكنني إجراء تكوينات لكل مشروع لخادم اللغة.
من الناحية المثالية ، أرغب في استخدام svelte.config.js
في كلٍّ من أدوات اللغة والمُجمِّع وتهيئة كل شيء مرتبط به هناك.
هذه الأشياء أيضًا: https://github.com/sveltejs/language-tools/tree/master/packages/svelte-vscode#settings
إحساس الذكور بالنسبة لي. أتخيل أن الجزء الصعب سيكون الموافقة على التسمية / كيف يجب تحديده بالضبط
من المنطقي بالنسبة لأشياء مثل التحذيرات. لا أوافق على أنه يجب قراءة جميع إعدادات خادم اللغة منه ، حيث يجب أن يكون ذلك من مسؤولية IDE لتوفيرها والتكامل مع خادم اللغة.
لذا فإن استخدام onwarn بصيغته الحالية هو اتجاه مقبول للذهاب؟
لكي نكون متوافقين مع التكوينات الحالية ، يمكننا تنفيذ واجهة رد اتصال onwarn مماثلة لاعتراض التحذيرات كما يتم إجراؤها حاليًا في المكونات الإضافية svelte للحزم.
السبب في وجود ربما ليس كل شيء ، ولكن بعض التهيئة لخادم اللغة في svelte.config.js
هو أن خيارات التنسيق على الأقل عادة ما يتم تكوينها على أساس كل مشروع. : التفكير:
يجب وضع خيارات التنسيق في ملف .prettierrc
حيث أن الامتداد يستخدم أجمل في تركيبة مع ملحق أجمل لإنجاز التنسيق. https://www.npmjs.com/package/prettier-plugin-svelte
لدي أجمل كخطاف للالتزام المسبق. التكوين في package.json
.
{
"prettier": {
"singleQuote": true,
"printWidth": 80,
"plugins": [
"prettier-plugin-svelte"
]
}
}
هل هناك شيء خاص في الدعاء الأجمل من LS؟ أو يجب تحميل هذا التكوين كما يفعل عادة؟ : التفكير:
هذا سوف يعمل أيضا كانت وجهة نظري أن خيارات التنسيق يجب ألا تكون موضع اهتمام svelte.config.js
.
أوافق ، الآن لا أرى أي شيء آخر غير onwarn
للانتقال بشكل معقول إلى svelte.config.js
.
ليس هناك الكثير لتقرره.
هل يبدو إجراء إعادة الاتصال بـ onwarn
في كل أداة حلاً جيدًا؟
تكوين موحد متوافق مع التكوين الحالي في الحزم.
أنا مهتم بدلاً من ذلك بإضافة دعم svelte.config.js
للأشياء التي لديها بالفعل آليات راسخة للتكوين. في ESLint ، على سبيل المثال ، يتم تمرير المكونات الإضافية للتو في كائن التكوين الذي قام ESLint بتحميله بالفعل. هذا يمكن أن يكون نتيجة لدمج عدة الهرمية .eslintrc.js
الملفات (أو ملفات JSON، أو ملفات YAML، أو محتويات eslintConfig
المفاتيح في package.json
الملفات)، و لا أعتقد أن ESLint يخبر المكون الإضافي بمكان وجود أي من هذه الملفات ، لذلك لا أعرف أين يجب أن يبحث المكون الإضافي عن svelte.config.js
. هناك طريقة واحدة موحدة للتعامل مع التكوين ، ويريد ESLint core أن يكون مسؤولاً عن ذلك.
إذن الحل هو:
svelte-vscode
يفعل.svelte.config.js
واستخدمه في .eslintrc.js
بطريقة ما. قم بعمل قائمة مع التجاهل واستخدمها في كلتا الوظيفتين أو شيء ما.svelte-check
لتحميل التكوين من مساحة العمل.يبدو أن الشيء الوحيد الذي يستحق التعديل هو svelte-check
إذن؟
بخلاف svelte-check
، يبدو أنه يمكن تنفيذه في أرض المستخدم. : التفكير:
المرشحون لمواءمة onwarn في رأيي هم: language-server ، svelte-check ، rollup plugin ، webpack plugin.
التعليق الأكثر فائدة
المرشحون لمواءمة onwarn في رأيي هم: language-server ، svelte-check ، rollup plugin ، webpack plugin.