תלות מאפשרת שימוש חוזר יעיל בקוד. ודא שאתה יודע איך לנהל אותם בפרויקטים של ה-Node שלך.

תלות היא פיסת קוד - ספרייה, מודול או חבילה - שפרויקט דורש כדי לתפקד כהלכה.

ב-Node.js, תלויות ו-devDependencies הן קטגוריות של חבילות שתוכל להגדיר בקובץ package.json שלך כדי לנהל את התלות של הפרויקט שלך. חקור את ההבדלים ביניהם ולמד כיצד להשתמש בהם בפרויקטים שלך.

תלות רגילה בפרויקט npm

תלות רגילה - או, פשוט, תלות - הן חבילות שהאפליקציה שלך דורשת לעבוד כמתוכנן בזמן ריצה ובסביבות ייצור.

תלות יכולה לכלול:

  • ספריות חיצוניות המציעות פונקציונליות בנויה מראש, כגון lodash.
  • מסגרות המספקות בסיס או מבנה לבניית יישומים, כגון Express או React.
  • מנהלי התקנים של מסד נתונים, כגון MongoDB או sqlite3.
  • חבילות המסייעות במשימות הקשורות לרשת, כגון Axios או Socket.io.

לדוגמה, אם אתה בונה א CRUD API עם Express.js, אֶקְסְפּרֶס תהיה אחת מהתלות שלך כי השרת שלך צריך את זה כדי לתפקד.

כדי להתקין את התלות בזמן הריצה, אתה יכול להשתמש במנהל חבילות כמו npm, מנהל חבילות הצומת, או חוט.

תלויות קיימות מתחת לאובייקט התלות בקובץ package.json. אובייקט התלות מאחסן את השמות והגרסאות של החבילות.

instagram viewer

כדי להתקין חבילה כתלות באמצעות NPM, הפעל את הפקודה למטה:

npm להתקין 

הפקודה למעלה מתקינה את החבילה ורושמת אותה כתלות בפרויקט שלך package.json:

// package.json

"תלות": {
"שם חבילה": "גרסה-^חבילה",
}

כאשר אתה משכפל פרויקט ממאגר מבוסס אינטרנט, אתה יכול להתקין את התלות על ידי הפעלת הפקודה למטה:

npm להתקין

כאשר אתה מפעיל את הפקודה למעלה, מנהל החבילות שלך קורא את ה package.json קובץ ומתקין את התלות וה-devDependencies שצוינו מתוך רישום החבילות.

תלות פיתוח וכיצד להשתמש בהן

תלות פיתוח - או devDepenendencies - הן חבילות שהאפליקציה שלך צריכה רק במהלך תהליך הפיתוח. במילים אחרות, הם אינם נחוצים בייצור.

devDependencies יכולים לכלול:

  • מסגרות בדיקה, כגון Jest או Mocha.
  • רצים מבחן, כגון חי.
  • Linters ופורמטים, כגון Eslint.
  • כלי תיעוד, כגון Swagger.

דוגמה נפוצה ל-devDepenedency היא חבילת Nodemon, שמפעיל מחדש את השרת שלך כאשר הוא מזהה שינויים בסקריפטים שלך.

אתה יכול להגדיר devDependencies תחת devDependencies חפץ ב package.json קוֹבֶץ. אובייקט זה מאחסן את השמות והגרסאות של החבילות.

אתה יכול להתקין חבילה כ-devDependency על ידי הפעלת הפקודה הזו:

npm להתקין  --save-dev

לחלופין, אתה יכול להתקין חבילה כ-devDependency על ידי הפעלת הפקודה הזו:

npm התקנת -D 

הפקודה למעלה מתקינה ורושמת את החבילה שלך package.json קובץ, כך:

// package.json
"תלות": {
"שם חבילה": "גרסה-^חבילה"
}

כאשר אתה משכפל פרויקט ממאגר מבוסס אינטרנט, מפעיל את ה npm להתקין הפקודה תתקין גם את ה-devDependencies.

עם זאת, הפעלת הפקודה עם ה- הפקה flag מתקין רק את התלות.

לדוגמה:

npm install --production

כאשר אתה מפעיל את הפקודה למעלה, מנהל החבילות שלך קורא את ה package.json קובץ ומתקין את התלות של היישום שלך ממרשם החבילות.

לחלופין, אתה יכול להגדיר את NODE_ENV משתנה ל"הפקהכדי להגיע לאותן תוצאות.

סוגים אחרים של תלות

מלבד תלות ו-devDependencies, Node.js גם מסווג חבילות כ peerDepenecies ו תלות אופציונלית.

תלות עמיתים

תלות עמיתים הן תלות שבהן חבילה משתמשת כאשר היא מצפה שגרסה מסוימת או גרסה תואמת של חבילה אחרת תהיה נוכחת באפליקציה המשתמשת בה.

מטרת התלות של עמיתים היא להבטיח שחבילה פועלת בצורה נכונה עם התלות שלה ומונעת התנגשויות או בעיות תאימות.

עבור גרסאות npm פחות מ-v7, תלות עמיתים לא מותקנות אוטומטית. במקום זאת, הקוד הכולל את החבילה חייב לכלול אותו כתלות. אם החבילה לא כוללת את זה, npm תעלה אזהרה.

הם קיימים תחת ה עמית תלות אובייקט בקובץ package.json:

"תלות עמיתים": {
"חֲבִילָה": "גירסת ^"
}

תלות אופציונלית

תלות אופציונלית הן חבילות שאינן חיוניות לפונקציונליות הליבה של פרויקט, אך יכולות לשפר את היכולות שלו אם הן זמינות.

מכיוון שלא נדרשות תלות אופציונלית כדי שהפרויקט יפעל כהלכה, תוכל להשמיט אותן במהלך ההתקנה.

הפעלת הפקודה למטה תדלג על תלות אופציונלית במהלך תהליך ההתקנה:

npm התקן --omit=אופציונלי

הם קיימים תחת ה תלות אופציונלית אובייקט בקובץ package.json:

"תלות אופציונלית": {
"חֲבִילָה": "גירסת ^"
}

קטגוריות מקלות על ניהול התלות שלך

הבנה, ניהול וסיווג של תלות יעילה עוזרת להבטיח הפרדה ברורה בין החבילות הנדרשות לייצור לאלו הדרושות רק במהלך הפיתוח.

הבחנה זו מסייעת לניהול תלות יעיל, צרור נכון ופריסה יעילה של הפרויקט שלך.