תאריך פרסום: 12 במרץ 2025
ESLint הוא כבר זמן רב הכלי המועדף לזיהוי שגיאות בקוד ב-JavaScript, והוא מציע מגוון של הגדרות וכללים שיעזרו למפתחים לאכוף סגנון טוב של JavaScript בפרויקטים שלהם. לאחרונה, נוספה ל-ESLint תמיכה ב-linting של CSS בפרויקטים, עם כללים נוספים לבדיקת היבטים של גיליונות סגנונות.
כחלק מהשקת התמיכה ב-CSS, ESLint מציע עכשיו את הכלל require-baseline
, שמאפשר לציין את סף הבסיס שבו רוצים להשתמש כשבודקים שגיאות בקוד CSS בפרויקטים. בפוסט המהיר הזה נסביר איך להשתמש בכלל הזה כדי לוודא שהקוד של CSS עומד בערכי הסף של 'חדש' ו'זמין באופן נרחב'.
איך משתמשים ב-ESLint כדי לאכוף את התכונות של Baseline CSS
אם כבר השתמשתם ב-ESLint בעבר, תהליך ההוספה של איתור שגיאות בקוד CSS לפרויקט אמור להיות מהיר למדי. כדי להתחיל, צריך להתקין את החבילה @eslint/css
בפרויקט:
npm install @eslint/css --save-dev
אחרי ההתקנה, תוכלו להוסיף לפרויקט תמיכה ב-CSS linting על ידי ייבוא החבילה @eslint/css
להגדרות הקיימות של ESLint:
// eslint.config.js
import css from "@eslint/css";
export default [
// Lint css files
{
files: ["src/css/**/*.css"],
plugins: {
css,
},
language: "css/css",
rules: {
"css/no-duplicate-imports": "error",
// Lint CSS files to ensure they are using
// only Baseline Widely available features:
"css/require-baseline": ["warn", {
available: "widely"
}]
},
},
];
איתור שגיאות בקוד CSS הוא תהליך שימושי בפני עצמו, אבל הערך המוסף של ESLint הוא הכלל require-baseline
של ה-linter. בקטע הקוד הקודם, נוצרות אזהרות בכל פעם שנתקלים בתכונה שלא זמינה ב-Baseline באופן נרחב. הדבר מצוין באמצעות המאפיין available
של הכלל, שמקבל גם את הערך "newly"
כדי לוודא שכל תכונות ה-CSS שבהן נעשה שימוש הן לפחות ברמת Baseline Newly available.
אחרי שמגדירים את קובץ ה-config, אפשר להריץ את ESLint ברמה הבסיסית של הפרויקט כדי לבדוק את ה-CSS של הפרויקט:
npx eslint
בסיום, ESLint יציג אזהרות לגבי ה-CSS של הפרויקט. האזהרות ייראו כך:
/var/www/my-cool-web-project/src/css/styles.css
269:3 warning Property 'overflow' is not a widely available baseline feature css/require-baseline
427:3 warning Property 'overflow' is not a widely available baseline feature css/require-baseline
444:12 warning Value 'contents' of property 'display' is not a widely available baseline feature css/require-baseline
500:3 warning Property 'resize' is not a widely available baseline feature css/require-baseline
573:5 warning Property 'overflow' is not a widely available baseline feature css/require-baseline
אחד מהיתרונות הגדולים של הוספת הפונקציונליות הזו ל-ESLint הוא שאפשר להשתמש בה בכל תהליך עבודה עם כלים שמשתמשים ב-ESLint. לדוגמה, אם אתם משתמשים ב-webpack, תוכלו להשתמש ב-eslint-webpack-plugin
כדי להציג את הפלט של ה-linter במהלך ה-build של הפרויקט:
// Import the ESLint plugin:
import ESLintPlugin from "eslint-webpack-plugin";
// Webpack config:
export default {
// Prior config code omitted...
plugins: [
new ESLintPlugin({
// Add the `"css"` extension to ensure
// CSS files are linted as well:
extensions: ["js", "css"]
})
]
};
בעזרת התוספות החדשות והשימושיות האלה ל-ESLint, תוכלו עכשיו לוודא שהפרויקטים שלכם משתמשים בתכונות של Baseline CSS בלי הרבה מאמץ נוסף. כדאי לנסות! יכול להיות שתגלו לראשונה שחלק מתכונות Baseline משמשות בפרויקט שלכם. למידע נוסף על האופן שבו המערכת פועלת, אפשר לעיין במסמכי התיעוד של כלל require-baseline
.