I'm looking to create a cross-platform package.json
command to lint all .js, .ts, .tsx files in the current directory, recursively.
Here's what I've tried.
"scripts": {
"lint": "eslint . --ext .js,.ts,.tsx",
}
*nix - ✅ Windows - 🚫
On Windows...
No files matching the pattern "." were found.
Please check for typing mistakes in the pattern.
2. GLOB matching pattern.
"scripts": {
"lint": "eslint **/*.js **/*.ts **/*.tsx",
}
*nix - 🚫 Windows - ✅
3. GLOB matching pattern with quotes.
"scripts": {
"lint": "eslint '**/*.js' '**/*.ts' '**/*.tsx'",
}
*nix - ✅ Windows - 🚫
This is a cross-platform project with developers using Mac, Linux, and Windows.
How do I get this single command to work on all three?
Im working on similar problems right now. I had success with something like.
"scripts": {
"lint": "eslint \"**/*.js\" \"**/*.ts\" \"**/*.tsx\"",
}
or shorter
"scripts": {
"lint": "eslint \"**/*.{js,ts,tsx}\"",
}
Replacing single quotes with escaped double quotes is actually a pattern not eslint specific.
Maybe it helps.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With