Closed2
husky + lint staged でコミット時に型チェックをする
package.json
の npm scripts に以下を設定している
"types:check": "tsc --pretty --noEmit",
これを husky でコミット時に実行したかったので、 lint-staged.config.js
を以下のように書いていたが
module.exports = {
'*.{ts,tsx}': [
'pnpm run lint',
'pnpm run types:check',
'pnpm run format:check',
],
}
*.tsx
で以下のようなエラーが出てしまう
error TS17004: Cannot use JSX unless the '--jsx' flag is provided.
husky から tsc
を実行した場合、.tsconfig.json
を検知できないのが原因らしい。
関数で書く方法があるようなので、以下の様にすると行けた:
module.exports = {
'*.{ts,tsx}': [
'pnpm run lint',
() => 'pnpm run types:check',
// 'pnpm run types:check',
'pnpm run format:check',
],
}
このスクラップは2023/01/05にクローズされました