یک pre-commit hook با استفاده از JavaScript و Husky بسازید که فایلهای staged جاوااسکریپت را با ESLint بررسی و در صورت وجود خطا از انجام commit جلوگیری کند.
18.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:59 0.0
برای حل: یک پروژه نود بسازید (npm init)، ESLint را پیکربندی کنید و Husky و lint-staged را نصب کنید؛ سپس در package.json یک اسکریپت prepare اضافه کنید که npx husky install را اجرا کند، و با npx husky add .husky/pre-commit "npx --no-install lint-staged" یک hook ایجاد کنید. در تنظیمات lint-staged مشخص کنید که روی فایلهای *.js دستور eslint --fix را اجرا کند تا در صورت وجود خطای غیرقابلاصلاح، فرایند commit متوقف شود. نکات: میتوانید ابتدا ESLint را با npx eslint --init پیکربندی کنید، قبل از push تغییرات را با git add و git commit تست کنید و از npm scriptها برای اجرای محلی lint استفاده کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
استفاده از Husky همراه lint-staged برای اجرای ESLint بر روی فایلهای جاوااسکریپت استیجشده روشی کارآمد برای جلوگیری از کامیتهای دارای خطاست. تفاوت این است که eslint --fix برخی مشکلات را به صورت خودکار برطرف میکند و باقی خطاها مانع انجام commit میشوند، بنابراین مطمئن شوید بهدرستی پیکربندی شده است. برای پیادهسازی، در package.json اسکریپت prepare را اضافه کنید تا husky نصب شود و با اجرای npx --no-install lint-staged، hook pre-commit ایجاد گردد. همچنین lint-staged را طوری پیکربندی کنید که *.js را هدف بگیرد و دستور eslint --fix را اجرا کند و در صورت وجود خطاهای غیرقابل اصلاح، commit متوقف شود.
گزارش