כיצד לפתור את 'צומת' המנוע אינו תואם לשגיאת מודול 'זה'.

Kyzd Lptwr T Zwmt Hmnw Ynw Tw M Lsgy T Mwdwl Zh



ב-Node.js, ה-' חֲבִילָה ' מכיל את כל הקבצים החשובים של מודול. מודול מתאים לספרייה שבונה חיבור עם אפליקציה בהתבסס על ההקשר שלה. כל החבילות של Node.js אינן מוגדרות מראש, רובן חיצוניות שניתן להתקין באפליקציית Node.js דרך מנהל החבילות 'npm/yarn'.

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

מתאר מהיר







כאשר 'צומת' המנוע אינו תואם ל'זה' שגיאת מודול מתרחשת?

ה'צומת' אינו תואם עם שגיאת המודול 'זה' מתרחשת מהסיבות הבאות:



סיבה 1: החבילה הנדרשת אינה תואמת

הסיבה הנפוצה ביותר לכך שה-'node' אינו תואם לשגיאת המודול 'This' נובעת מחוסר ההתאמה בין ה-Node.js לגרסת החבילה הנדרשת. מתמודדים עם זה בעיקר בזמן פריסת אפליקציית Node.js ל-AWS.



סיבה 2: גרסה ישנה יותר של צומת

סיבה נוספת היא הגרסה הישנה יותר של Node.js. הוא מתמודד בעיקר במערכת ההפעלה אובונטו כאשר המשתמש מנסה לעדכן את גרסת ה-Node.js מספר פעמים וגם מעדכן את מאגרי המערכת יחד איתה. בשל סיבה זו, ' מַתְאִים ” הפקודה תתחיל גרסה ישנה יותר של Node.js שנלקחה מחבילת Debian והמשתמש יתמודד עם השגיאה הספציפית לעיל.





כיצד לפתור את 'צומת' המנוע אינו תואם את שגיאת המודול 'זה'?

סעיף זה מגייס את כל הפתרונות האפשריים לעבודה כדי לפתור את 'צומת' המנוע אינו תואם לשגיאת מודול 'זה':

פתרון 1: התעלם מבדיקת המנוע באמצעות 'npm' ו-'yarn'

הפתרון הראשון הוא ' מתעלמים מבדיקת המנוע ' תוך כדי התקנת החבילה שצוינה באמצעות ' npm ' או ' חוּט 'מנהלי חבילות. ל ' npm ' ניתן לעשות זאת באמצעות ' -כּוֹחַ 'דגל ועבור' חוּט ' ניתן לבצע משימה זו באמצעות ' -התעלם מנועים 'דגל.



צעד ראשון על ' npm ' מנהל אריזה.

תחביר (עבור NPM)

npm להתקין -- כּוֹחַ < חֲבִילָה שֵׁם >

על פי התחביר לעיל, ה' -כּוֹחַ דגל מוסיף את החבילה שצוינה ליישום Node.js בכוח

כעת השתמש בתחביר לעיל כדי להתקין חבילה ספציפית בגרסת Node.js הנוכחית:

npm להתקין -- כתב כתיבה כוח

בפקודה שלעיל, חבילת 'typescript' מותקנת תוך התעלמות מתאימות גרסת ה-Node הנוכחית.

הפלט שלהלן מראה כי ' כתב דפוס החבילה הותקנה בכוח ביישום Node.js הנוכחי. זה גם מציג הודעת אזהרה בגלל המטמון. בצע את ' אימות מטמון npm ' הפקודה כדי לוודא אם המטמון פעל כראוי או לא:

כעת התעלם מבדיקות המנוע באמצעות ' חוּט מנהל החבילות בעזרת הפקודה המפורטת להלן:

התקנת חוט -- להתעלם - מנועים

הפקודה לעיל מתעלמת מבדיקות המנוע ומאשרת ש' חוּט ' אינו מתקין את התלות האופציונלית. ה ' -התעלם מנועים ' דגל מריץ את הפקודה 'התקנת חוט' במצב לא מקוון:

הפקודה לעיל יוצרת ' מנעול חוט ” הקובץ בספרייה הראשית של פרויקט Node.js.

ה ' חוּט מנהל החבילות דורש את התחביר הבא כדי להתקין חבילה תוך התעלמות מבדיקות המנוע:

תחביר (עבור חוט)

להוסיף חוט < חֲבִילָה שֵׁם > -- להתעלם - מנועים

כעת השתמש בתחביר הכתוב לעיל כדי להתקין ' כתב דפוס חבילה גלובלית במערכת הפעלה:

חוט גלובלי להוסיף כתב כתיבה -- להתעלם - מנועים

הפלט שלהלן מוסיף בהצלחה את פרויקט ה-typescript באופן גלובלי במערכת ההפעלה הנוכחית של Windows עבור כל הפרויקטים של Node.js:

טיפ: התעלם מבדיקות מנוע עבור כל הפקודות

אם המשתמש רוצה להתעלם מבדיקת המנוע עבור כל הפקודות, הפעל את הפקודה המרוצה למטה יחד עם ' נָכוֹן 'ערך בוליאני:

התעלמות של ערכת תצורת חוט - מנועים נָכוֹן

הפקודה לעיל אומרת למהדר שמתעלם משדה המנוע שצוין בקובץ 'package.json':

ה ' התעלמות-מנועי בדיקות הוגדרו כ-true עבור כל הפקודות. כעת המשתמש יכול להתקין כל חבילה ספציפית ב-Node.js מבלי לציין את הדגל '–ignore-engines':

פתרון 2: השבת את שדות המנוע המוגדרים כברירת מחדל באמצעות קובץ 'package-lock.json'.

הפתרון הבא הוא לשנות את ' מנוע השדה מהשדה ' package-lock.json 'קובץ. כדי לעשות זאת, ראשית, נווט לספרייה הראשית של פרויקט Node.js ופתח את הקובץ 'package-lock.json'.

לאחר פתיחת הקובץ הממוקד עבור אל ' מנועים ' שדה ועדכן אותו בדרך זו:

ללחוץ ' Ctrl+S ' כדי לשמור את הקובץ לעיל. השינוי מאפשר למנהל החבילות 'npm' להתקין את גרסת החבילה הנדרשת המתאימה לגרסת '>=14.17' Node.js.

פתרון 3: עדכן את הצומת לגרסה האחרונה

פתרון נוסף הוא עדכון גרסת Node.js. העדכון של Node.js בכל מערכות ההפעלה הוא די קל וניתן לבצע אותו בעזרת המדריכים המפורטים להלן:

  • כיצד לעדכן גרסאות צומת ב-Windows?
  • כיצד לשדרג את גרסת הצומת באובונטו?
  • כיצד לשדרג את Node.js לגרסה האחרונה ב-macOS?

מה לעשות אם 'צומת' המנוע אינו תואם לשגיאת המודול 'זה' עדיין נמשכת?

אם 'הצומת של המנוע' אינו תואם למודול 'זה' שגיאת 'זה' נמשכת לאחר פתרון זה עם כל אחד מהפתרונות לעיל, מחק את ' node_modules ' תיקייה. התיקיה 'node_modules' נוצרת באופן אוטומטי כאשר מותקן של צד שלישי מותקן. הוא מכיל את כל חבילות הצד השלישי בהן תלוי פרויקט Node.js.

יתר על כן, ה' package-lock.json 'קובץ גם יוצר באופן אוטומטי כאשר חבילה מותקנת עם 'npm'. זה שומר את התיעוד של תלות כמו גם תת-תלות שבהן תלויה החבילה יחד עם הגרסאות שלהן. אם החבילה מותקנת עם 'חוט' אז שם הקובץ הזה הוא ' מנעול חוט '.

פתרון: הסר את התיקיה 'node_modules' ואת הקובץ 'package-lock.json'.

הפתרון לשגיאה שנתקלתה הוא למחוק את התיקיה 'node_modules', את קובץ התצורה 'package-lock.json/yarn.lock' ולהתקין שוב את החבילה הנדרשת.

בלינוקס , ניתן למחוק את התיקיה או הקבצים שצוינו לעיל בעזרת ה' rm הפקודה (הסר)':

rm - חבילת rf node_modules - לנעול. json //מחק תיקייה וקובץ

ls // הצג קובץ וספריות

בפקודה לעיל ה' ' הדגל מוחק את התיקיה שצוינה ' באופן רקורסיבי כולל את כל ספריות המשנה שלו ואת ה-' ו 'דגל אומר למתורגמן לבצע משימה זו' בכוח ”:

הפלט מראה שהתיקיה 'node_modules' וקובץ 'package-lock.json/yarn.lock' הוסרו לחלוטין:

בווינדוס , המשתמש יכול למחוק את התיקיה 'node_modules' ואת הקובץ 'package-lock.json/yarn.lock' פשוט על ידי לחיצה על מקש 'מחק' או שימוש באפשרות 'מחק' מהתפריט הנפתח.

זה הכל על פתרון השגיאה 'לא ניתן למצוא מודול' ב-Node.js.

סיכום

כדי לפתור את המנוע ' node' אינו תואם למודול 'זה'. שגיאה, התעלם מבדיקות המנוע לפי מנהל החבילות שצוין. ל ' npm ' ניתן לעשות זאת באמצעות ' -כּוֹחַ 'דגל, ועבור ' חוּט ' ניתן לבצע אותו באמצעות ' -התעלם מנועים 'בדוק דגל. בנוסף, המשתמש יכול גם לפתור את השגיאה על ידי שינוי ' מנועים ' שדה של ' package-lock.json ” קובץ או שדרוג גרסת ה-Node. פוסט זה דן בכל הסיבות האפשריות יחד עם הפתרון שלהם לפתרון השגיאה 'לא ניתן למצוא מודול' באמצעות Node.js.