TypeScript 3.8 מוסיף יבוא ויצוא מסוג בלבד

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

המהדורה מוסיפה תחביר חדש לייבוא ​​ויצוא מסוג בלבד, מתוך כוונה להעניק למשתמשים שליטה דקה יותר על יבוא וחיסול. import typeתחביר רק הצהרות היבוא לשמש הסברים מסוג והצהרות ותמיד נמחקים לחלוטין. export type התחביר רק מספק יצוא לשמש בהקשרי סוג והוא נמחק מן תפוקת כתב יד.

TypeScript השתמש בתחביר הייבוא ​​של JavaScript כדי לאפשר סוגי הפניות. אמנם נוח, היכולת עבדה רק בגלל תכונת elision הייבוא, שמשמיטה ייבוא ​​מסוג TypeScript כאשר TypeScript מפיק קבצי JavaScript. עם זאת, חיסול הייבוא ​​לא היה מספיק ובעייתי.

יחד עם  import type, עבודה מודפסת 3.8 גם מוסיף דגל מהדר לשלוט במה שקורה עם יבוא כי לא ישמש בזמן ריצה:  importsNotUsedAsValues.

לגבי תקן ECMAScript עבור JavaScript, TypeScript 3.8 מוסיף תמיכה בשדות פרטיים של ECMAScript, המהווה חלק מהצעת הצהרת שדות מחלקה עבור JavaScript. על פי הצעה זו ישולב שדות ציבוריים ופרטיים בשלמות יחידה ואורתוגונלית.

שיפורים אחרים שהובטחו ב- TypeScript 3.8 כוללים:

  • בדיקת סוג מצטברת "מהירה ומשוחררת", הכוללת אפשרות מהדר assumeChangesOnlyAffectDirectDependencies,. אפשרות זו יכולה להפחית את זמני הבנייה בקבצים מסוימים, מכיוון ש- TypeScript יבדוק / ​​יבנה מחדש רק קבצים שהשתנו וכן קבצים שמייבאים אותם ישירות. מומלץ לבסיסי קוד גדולים בהם מפתחים מוכנים לדחות שגיאות מלאות בפרויקט עד למועד מאוחר יותר.
  • ייצוא הייצוא * nsכתחביר, מתן נקודת כניסה יחידה לחשיפת כל חברי מודול אחר כחבר יחיד.
  • רמה עליונה await, תכונה מתקרבת של ECMAScript להסרת מגבלות על שימוש awaitבביטוי בחלק העליון של הקובץ בתנאים ספציפיים.
  • קבצי JavaScript נתמכים ב- TypeScript 3.8 על ידי הפעלת allowJsהדגל; בדיקת סוג של קבצים אלה נתמכת באמצעות checkjsהאפשרות או על ידי הוספת הערה // @ ts-check לראש קבצי .js. תגי JSDoc חדשים ממונפים עבור מאפיינים, מכיוון שקובצי JavaScript חסרים תחביר ייעודי לבדיקת סוג.
  • watchOptionsשדה tsconfig.jsonואת jsconfig.jsonמאפשר למשתמשים לספר בשירות מהדר / השפה איזה קובץ צפייה אסטראטגי כדי להשתמש כדי לעקוב אחר קבצים וספריות.
  • רפקטורינג להמרת שרשור מחרוזות.
  • בדיקות יכולות מחמירות יותר לאיגודים עם חתימות אינדקס, שינוי שובר.
  • בשינוי שבור אחר, objectב- JSDoc כבר לא נמצא anyתחת noImplicitAny.

באפשרותך להתקין את המהדורה הכללית של TypeScript 3.8 דרך NuGet או דרך NPM:

npm install typescript