vue.js - ESlint در فایل .vue با تایپاسکریپت کار نمیکند
من پروژهام را با vue ui ساخته بودم، این فایل package.json من است
"@vue/cli-plugin-eslint": "^4.1.0",
"@vue/cli-plugin-typescript": "^4.1.0",
"@vue/eslint-config-standard": "^4.0.0",
"@vue/eslint-config-typescript": "^4.0.0",
"eslint": "^5.16.0",
"eslint-plugin-vue": "^6.0.1",
"typescript": "~3.5.3",
این فایل .eslintrc.js من است
module.exports = {
root: true,
env: {
node: true
},
'extends': [
'plugin:vue/essential',
'@vue/standard',
'@vue/typescript'
],
rules: {
'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
"indent": ['error', 4]
},
parserOptions: {
parser: '@typescript-eslint/parser'
},
overrides: [
{
files: [
'**/__tests__/*.{j,t}s?(x)',
'**/tests/unit/**/*.spec.{j,t}s?(x)'
],
env: {
jest: true
}
}
]
}
و این تنظیمات ویژوال استودیو کد من است، settings.json
{
"eslint.alwaysShowStatus": true,
"eslint.autoFixOnSave": true,
"eslint.validate": [
"javascript",
"javascriptreact",
{ "language": "vue", "autoFix": true },
{ "language": "typescript", "autoFix": true },
{ "language": "typescriptreact", "autoFix": true }
]
}
این در فایل .ts خوب کار میکند، اما در فایل .vue کار نمیکند (کلاس بدون هیچ نکتهای از eslint). پس برای رفع آن چه کاری باید انجام دهم، ایدهای دارید؟
پاسخ شماره ۱
چگونه eslint را اجرا میکنید؟ در فایل .eslintrc.json شما اعلام نکردهاید که eslint فایلهای .vue را بخواند. شما باید eslint را با پرچم --ext اجرا کنید. (eslint . --ext .vue)