我正在寻找创建一个跨平台 package.json命令,以递归方式对当前目录中的所有 .js、.ts、.tsx 文件进行 lint。
这是我尝试过的。
"scripts": {
"lint": "eslint . --ext .js,.ts,.tsx",
}
Run Code Online (Sandbox Code Playgroud)
*尼克斯 - ?窗户 -
在 Windows 上...
没有与模式“.”匹配的文件 被找到。
请检查模式中是否有打字错误。
2. GLOB 匹配模式。
"scripts": {
"lint": "eslint **/*.js **/*.ts **/*.tsx",
}
Run Code Online (Sandbox Code Playgroud)
*nix - Windows - ?
3. 带引号的 GLOB 匹配模式。
"scripts": {
"lint": "eslint '**/*.js' '**/*.ts' '**/*.tsx'",
}
Run Code Online (Sandbox Code Playgroud)
*尼克斯 - ?窗户 -
这是一个跨平台项目,开发人员使用 Mac、Linux 和 Windows。
我如何让这个单一的命令对所有三个都起作用?
我现在正在处理类似的问题。我在类似的事情上取得了成功。
"scripts": {
"lint": "eslint \"**/*.js\" \"**/*.ts\" \"**/*.tsx\"",
}
Run Code Online (Sandbox Code Playgroud)
或更短
"scripts": {
"lint": "eslint \"**/*.{js,ts,tsx}\"",
}
Run Code Online (Sandbox Code Playgroud)
用转义的双引号替换单引号实际上是一种非 eslint 特定的模式。
也许它有帮助。