在ESLint官网上,有一段话,叫做Per-rule Performance
。
它指出
“设置TIMING
环境变量将触发在linting完成时显示十个运行时间最长的规则,沿着显示它们各自的运行时间和相对性能影响(以占总规则处理时间的百分比表示)”。
$ TIMING=1 eslint lib
Rule | Time (ms) | Relative
:-----------------------|----------:|--------:
no-multi-spaces | 52.472 | 6.1%
camelcase | 48.684 | 5.7%
no-irregular-whitespace | 43.847 | 5.1%
valid-jsdoc | 40.346 | 4.7%
handle-callback-err | 39.153 | 4.6%
space-infix-ops | 35.444 | 4.1%
no-undefined | 25.693 | 3.0%
no-shadow | 22.759 | 2.7%
no-empty-class | 21.976 | 2.6%
semi | 19.359 | 2.3%
然而,当我加上
"lint-js": "TIMING=1 eslint --ext .js,.jsx,.ts,.tsx src/js --cache --cache-strategy metadata"
在package.json
中的"scripts"
中运行它,
npm run lint-js
在我的Windows OS
中,
'TIMING' is not recognized as an internal or external command,
operable program or batch file.
如何在Windows操作系统中运行TIMING=1
和eslint
?
5条答案
按热度按时间toiithl61#
经过研究,我发现了一个简单的方法来解决跨平台问题。
需要垂直条,否则Windows将在无法识别的
export
上崩溃。参考链接:https://stackoverflow.com/a/36373133/13230147
yvt65v4c2#
在Windows环境中,应使用
set
命令设置变量。从命令行尝试以下操作:
4xy9mtcn3#
你有两个选择:使用set命令或使用外部工具(如cross-env):
使用set(仅限Windows)
使用cross-env
安装方式:
然后将脚本命令更改为:
3okqufwl4#
我在使用Windows时也遇到了同样的问题,我的工作团队使用Mac,你可以尝试使用https://www.npmjs.com/package/cross-env,这对我很有效。
uxhixvfz5#
在cmd中使用
set TIMING=1
或在powershell中使用$env:TIMING=1