我正在尝试使用ESLint来修改和修复我的代码。 当我使用我的配置文件运行ESLint并且没有修复标志时,它运行正常,这就是它输出的内容。
eslint -c .eslintrc.json ./src/aura/SearchAvailableNumbers
/home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersController.js
8:9 error Unexpected blank line after variable declarations newline-after-var
15:13 error 'hlp' is defined but never used no-unused-vars
50:30 error 'helper' is defined but never used no-unused-vars
55:32 error 'helper' is defined but never used no-unused-vars
59:42 error 'helper' is defined but never used no-unused-vars
69:7 error Expected { after 'if' condition curly
69:22 error Expected '===' and instead saw '==' eqeqeq
71:22 error Expected '===' and instead saw '==' eqeqeq
76:22 error Expected '===' and instead saw '==' eqeqeq
84:50 error Object properties must go on a new line object-property-newline
89:21 error Expected '===' and instead saw '==' eqeqeq
113:27 error 'appEvent' is already defined no-redeclare
/home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersHelper.js
14:17 error Gratuitous parentheses around expression no-extra-parens
23:17 error 'appEvent' is defined but never used no-unused-vars
24:28 error Expected '===' and instead saw '==' eqeqeq
28:28 error Expected '===' and instead saw '==' eqeqeq
32:28 error Expected '===' and instead saw '==' eqeqeq
所有这些信息都是正确的,并且是必须在代码中修复的问题。 所以我再次运行它,这次是
eslint --fix --debug -c .eslintrc.json ./src/aura/SearchAvailableNumbers
现在输出
eslint:cli Running on files +0ms
eslint:config Using command line config .eslintrc.json +70ms
eslint:config-file Loading JSON config file: /home/jason/sfa/testproj/.eslintrc.json +5ms
eslint:config-file Loading /usr/local/lib/node_modules/eslint/conf/eslint.json +292ms
eslint:config-file Loading JSON config file: /usr/local/lib/node_modules/eslint/conf/eslint.json +0ms
eslint:ignored-paths Looking for ignore file in /home/jason/sfa/testproj +40ms
eslint:ignored-paths Could not find ignore file in cwd +0ms
eslint:glob-util Creating list of files to process. +1ms
eslint:cli-engine Processing /home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersController.js +6ms
eslint:cli-engine Linting /home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersController.js +1ms
eslint:config Constructing config for /home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersController.js +0ms
eslint:config Using .eslintrc and package.json files +0ms
eslint:config Loading /home/jason/sfa/testproj/.eslintrc.yml +2ms
eslint:config-file Loading YAML config file: /home/jason/sfa/testproj/.eslintrc.yml +1ms
eslint:config-file Loading /usr/local/lib/node_modules/eslint/conf/eslint.json +63ms
eslint:config-file Loading JSON config file: /usr/local/lib/node_modules/eslint/conf/eslint.json +0ms
eslint:config Using /home/jason/sfa/testproj/.eslintrc.yml +5ms
eslint:config Merging command line config file +0ms
eslint:config Merging command line environment settings +0ms
eslint:config-ops Apply environment settings to config +1ms
eslint:config-ops Creating config for environment browser +0ms
eslint:cli-engine Linting code for /home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersController.js (pass 1) +3ms
eslint:cli-engine Generating fixed text for /home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersController.js (pass 1) +147ms
eslint:text-fixer Applying fixes +0ms
eslint:text-fixer No fixes to apply +0ms
eslint:cli-engine Processing /home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersHelper.js +0ms
eslint:cli-engine Linting /home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersHelper.js +1ms
eslint:config Constructing config for /home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersHelper.js +0ms
eslint:config Using config from cache +0ms
eslint:cli-engine Linting code for /home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersHelper.js (pass 1) +0ms
eslint:cli-engine Generating fixed text for /home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersHelper.js (pass 1) +56ms
eslint:text-fixer Applying fixes +0ms
eslint:text-fixer No fixes to apply +0ms
eslint:cli-engine Linting complete in: 291ms +1ms
eslint:cli Fix mode enabled - applying fixes +0ms
/home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersController.js
8:9 error Unexpected blank line after variable declarations newline-after-var
15:13 error 'hlp' is defined but never used no-unused-vars
50:30 error 'helper' is defined but never used no-unused-vars
55:32 error 'helper' is defined but never used no-unused-vars
59:42 error 'helper' is defined but never used no-unused-vars
69:7 error Expected { after 'if' condition curly
69:22 error Expected '===' and instead saw '==' eqeqeq
71:22 error Expected '===' and instead saw '==' eqeqeq
76:22 error Expected '===' and instead saw '==' eqeqeq
84:50 error Object properties must go on a new line object-property-newline
89:21 error Expected '===' and instead saw '==' eqeqeq
113:27 error 'appEvent' is already defined no-redeclare
/home/jason/sfa/testproj/src/aura/SearchAvailableNumbers/SearchAvailableNumbersHelper.js
14:17 error Gratuitous parentheses around expression no-extra-parens
23:17 error 'appEvent' is defined but never used no-unused-vars
24:28 error Expected '===' and instead saw '==' eqeqeq
28:28 error Expected '===' and instead saw '==' eqeqeq
32:28 error Expected '===' and instead saw '==' eqeqeq
✖ 17 problems (17 errors, 0 warnings)
当我打开实际代码时,没有任何改变。当我再次运行linter时,它输出相同的东西。
它清楚地说“生成固定文本”,但随后输出“无需修复”。我找不到关于修复标志如何在线运行的任何内容,所以我转向stackoverflow寻求帮助..在此先感谢。
答案 0 :(得分:7)
并非所有ESLint规则都是可修复的(实际上大多数规则尚不可修复)。您可以通过在此页面上查找扳手字形找出可以自动固定的规则:http://eslint.org/docs/rules/
您遇到错误的规则目前都无法自动修复。有些是因为ESLint团队还没有得到它们(比如newline-after-var
),有些,因为它很可能创建一个不同的逻辑然后用于原始代码(如{{1 }和一些,因为无法确定自动修复它的正确方法(如eqeqeq
和no-unused-vars
)