כלי סביבת עבודה

Flutter DevTools

ל‑DevTools כבר יש תצוגת רשת, ציר זמן, מפקח ווידג'טים ומנתח זיכרון — והוא עצמו אפליקציית Flutter web שמוגשת מהמחשב שלכם. לכן Gitcito לא בונה שום דבר מזה מחדש, וגם לא מדבר בעצמו עם Dart VM Service: הוא מבחין בכתובת ומטמיע אותה.

‏DevTools פתוח בלשונית של Gitcito

ברגע ששירות ה‑VM עולה, ‏flutter run מדפיס את השורה:

The Flutter DevTools debugger and profiler on iPhone 16 Pro is available at:
http://127.0.0.1:9100?uri=http://127.0.0.1:53412/uJ8k=/

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

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

אילו כלים

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

כלי השורה שהוא מדפיס
Flutter DevTools The Flutter DevTools … is available at: <url>
Dart DevTools (dart devtools) Serving DevTools at <url>
Vue DevTools (@vue/devtools) Vue Devtools … listening on <url>
Prisma Studio Prisma Studio is up on <url>
Drizzle Studio Drizzle Studio is up and running on <url>
webpack-bundle-analyzer Webpack Bundle Analyzer is started at <url>
כל דבר אחר שמזכיר DevTools וכתובת נופל להתאמה כללית

מה אי אפשר להטמיע, ולמה. מפקח Node מדפיס נקודת קצה ws:// שמנפה שגיאות מתחבר אליה, לא דף — והחזית של Chrome DevTools שמלווה אותו גרה מאחורי כתובת devtools:// שאף תצוגה מוטמעת אינה רשאית לטעון. הגרסה העצמאית של React DevTools היא חלון שולחן עבודה משל עצמה, לא דף שמוגש. שניהם אינם יכולים להיות לשונית כאן; שניהם היו דורשים לקוח של פרוטוקול ניפוי, לא כתובת.

שרת פיתוח אינו כלי פיתוח. ‏Vite על :5173 הוא האפליקציה שלכם, ולהטמיע אותה זה לוח תצוגה מקדימה — פיצ׳ר אחר, ובכוונה לא זה.

מה מותר לו

התצוגה המוטמעת מהלכת ברצועה קצרה, כי האפליקציה הזאת מחזיקה אישורי גישה:

  • לולאה מקומית בלבד. ‏127.0.0.1, ‏localhost, ‏::1. חיבור לכל כתובת אחרת נדחה, וגם הפניה אליה.
  • בלי preload, בלי node integration, עם בידוד הקשר. לדף אין שום גשר אל Gitcito.
  • קישורים נפתחים בדפדפן האמיתי שלכם, בחלון רגיל, לא בתוך הלוח.

המגבלות

  • זה DevTools, לא משהו שלנו. מה שהגרסה הזאת יודעת לעשות — הלוח עושה; מה שהיא לא יודעת, גם אנחנו לא. אין תצוגת רשת בטעם Gitcito.
  • רק Flutter מכריז על עצמו כך. תוכנית Dart רגילה מדפיסה כתובת של שירות VM אבל לא כתובת DevTools, ולכן לא מופיע כפתור.
  • לוח ריק פירושו שהאפליקציה נעצרה. את DevTools מגישה האפליקציה שרצה; כשהיא מסתיימת, הכתובת שלה מפסיקה לענות.

ראו גם: הרצה וניפוי

שיפור התרגום הזה ב־GitHub