我在package.json
中定义了一个脚本:
"scripts": {
"prettierCheck": "./node_modules/.bin/prettier --check ./app/javascript/**/*.js"
}
如果我使用yarn run prettierCheck
运行此脚本,则Prettier找不到文件的任何格式问题。但是,如果我直接运行Prettier命令,它将发现违规文件。
yarn run prettierCheck
的输出:
~/Projects/tome $ yarn run prettierCheck
yarn run v1.19.0
$ ./node_modules/.bin/prettier --check ./app/javascript/**/*.js
Checking formatting...
All matched files use Prettier code style!
Done in 0.20s
./node_modules/.bin/prettier --check ./app/javascript/**/*.js
的输出:
~/Projects/tome $ ./node_modules/.bin/prettier --check ./app/javascript/**/*.js
Checking formatting...
{... several files listed here ...}
Code style issues found in the above file(s). Forgot to run Prettier?
为什么会这样?直接运行命令与通过Yarn脚本运行命令有什么区别?
答案 0 :(得分:1)
我有同样的问题,或者至少我以为我有同样的问题。我 尝试了一些操作,例如在命令中为文件/ dir / glob添加引号 ,更改了路径/ glob,它开始为我工作,因为现在我可以看到一些有用的输出。试试这些,也许对你们也一样。
这是prettier CLI documentation关于路径和文件/ dir / glob的内容。
别忘了各地的引号!引号确保 更漂亮的CLI扩展了全局而不是您的shell, 对于跨平台使用很重要。
因此请在您的脚本中尝试类似的操作( 注意: -c是--check 的缩写。 )
scripts": {
"pretty-check": "prettier -c 'src/**/*.ts'",
}
注意'src/**/*.ts'
周围的引号
我不确定这是否对所有人都适用,但我希望它能像对我一样。
如果您想知道 什么是文件/ dir / glob
基本上,这是为文件定义正则表达式的部分,例如{{ 1}}在命令'src/**/*.ts'