מה חדש ב- Angular 9.1

Angular 9.1 הגיע, עם שיפורים לביצועים ובמקביל למהדר המהירות של ngcc. צינור האוסף והעיבוד של אייבי קיבל תשומת לב גם הוא, וכתוצאה מכך הביאו ביצועים טובים יותר.

Angular 9.1, שפורסם ב -25 במרץ, עוקב אחר מהדורת Angular 9.0, שהפכה לזמינה כגרסת הפקה ב- 6 בפברואר 2020. שדרוג גרסת 9.0 למסגרת הפופולרית מבוססת TypeScript מחליף יישומים למהדר Ivy וזמן הריצה כברירת מחדל.

אייבי מציעה אוסף מהיר יותר של AOT, כמו גם גדלי חבילות קטנים יותר, בדיקות מהירות יותר וניקוי באגים טוב יותר. כריכת CSS משופרת ומחייבת סגנון מוצגת גם באייבי, יחד עם שיפורים בבדיקת סוגים, שגיאות בנייה וזמני בנייה. גם חלק מ- Angular 9 הוא  ng update, שמבטיח להיות כלי אמין ואינפורמטיבי יותר לעדכון יישומים ותלותיהם. 

Angular מספק הזרקת תלות, דבר שימושי במיוחד להרכבת שירותי נתונים ליישומים, יחד עם שימוש בתבנית HTML להרכבת רכיבים. ב- Angular, מפתחים עדיין מרכיבים רכיבים עם רכיב HTML שמתחבר לקוד TypeScript לחלקים הכרחיים בתוכנית.

היכן ניתן להוריד את Angular 9.1 או מהדורות קודמים

אתה יכול להוריד את מהדורת הייצור Angular מ- GitHub וכן את מהדורות בטא. מדריך עדכון Angular פורסם, יחד עם מדריך לשדרוג ל- Angular 9.

תכונות חדשות ב- Angular 9.1

  • אופטימיזציה לביצועים עבור ה- ngcc, כמו גם שיפור במקביל ובמהימנות למקרי שימוש ב- ngcc monorepo. כבר לא מומלץ להשתמש בסקריפט לאחר ההתקנה של NPM. עם ngcc, עיבוד אסינכרון מושהה אם בתהליך אחר יש את קובץ הנעילה. גם עם ngcc, יכולת שיטוח מפת המקור מסוגלת לטעון עץ של קבצי מקור המחוברים באמצעות מפות מקור ולשטוח אותם למפת מקור אחת. מפת מקור זו ממפה ישירות מהקובץ שנוצר סופית אל המקורות המקוריים אליהם מפנה מפות המקור הביניים.
  • תמיכה ב- TypeScript 3.8.
  • הבינלאומי, באמצעות i18n, תומך כעת במידע המקומי של RTL.
  • ביצועי הקיסוס שופרו על ידי הסרת טיעון האירוע שאינו בשימוש בהוראות המאזין. בעבר, אייבי יצר $eventויכוח, גם אם ביטויי המאזין לא שימשו אותו. זה יכול להוביל לייצור בתים מיותר. כמו כן, נכלל תיקון תאימות לבדיקת תבניות אייבי.

תכונות חדשות ב- Angular 9.0

מלבד הפיכת Ivy לברירת המחדל, Angular 9.0 כולל את התכונות והשיפורים החדשים הבאים:

  • אפשרויות חדשות providedInליצירת @Injectableשירות כוללות platform, מה שהופך שירות לזמין במזרק מיוחד של פלטפורמת סינגלטון המשותפת לכל היישומים בדף, anyומספק מופע ייחודי בכל מודול שמזריק את האסימון.
  • רתמות רכיבים, בכדי להבטיח שמבחני היחידה יהיו בהיקף תקין ופחות שבירים. פרטי היישום מופשטים.
  • רכיבים חדשים המאפשרים הכללה של יכולות YouTube ו- Google Maps ביישומים.
  • תמיכה ב- TypeScript 3.7 ו- TypeScript 3.6.
  • הביצועים שופרו עבור EventListeners.
  • ניתן CurrencyPipeלהגדיר כעת את קוד המטבע המוגדר כברירת מחדל .
  • כדי לשפר את הביצועים של מעבד ה- Ivy, גישות חוזרות של המדינה למדינה מוסרות מההוראות i18n כאשר המידע כבר זמין. אייבי גם מקבל שיפור ביצועים מהסרת SafeDetectionקוד נוסף . ואת חבילת @ angular / localize ניתן להוסיף לפרויקט CLI Angular באמצעות ng add.
  • גם עבור מעבד הקיסוס מוצעות הודעות שגיאה טובות יותר עבור רכיבים לא ידועים. בנוסף, נוסף דגל חדש localize-translateהמאפשר לציין את אזור המקור.
  • כדי לשפר את הביצועים בליבה, החיטוי הופך למטלטל עצים במעבד הקיסוס. 
  • גם בקיסוס, בדיקת סוג התבנית שונתה לייצור ts.Diagnostics. זה מתקן נושא עיצוב שבו המהדר Angular ייצר גם אבחון TypeScript מקורי וגם פורמט אבחון פנימי משלו, שלא היה אופטימלי.
  • גם עבור הליבה, Angular מוסיף סכמת הגירה חדשה, בהתאם לתוכנית ההגירה הנתונה.
  • NgFormSelectorWarningהבורר הוסר.
  • עבור ngcc (מהדר תאימות זוויתית), נוספה הגירה לשיעורי ילדים לא מקושטים.
  • מספר תיקוני באגים נעשו עבור אייבי, המהדר, הליבה, שפת השירות, ngcc ובאזל.

תכונות חדשות ב- Angular 8.2

פורסם באוגוסט 2019, גרסה זוויתית 8.2 כוללת:

  • כדי לשפר את ביצועי המהדר, העתקה נמנעת מאב טיפוס בעת שיבוט של אובייקט. זה מעדכן את פונקציית השיבוט של המחלקה ApplySourceSpanTransformer, שם נעשה שימוש בלולאת ה- for-in, מה שהביא להעתקה מאב-טיפוס למאפיינים של עצמו, וצורכת זיכרון רב יותר.
  • תמיכה ב- TypeScript 3.5.
  • קומפילציה של יעדים המשמשים את כלי הקית'ה עם מעבד הקיסוס. פעולה זו מבטלת בעיות עם התייחסויות צולבות לתלות מעבר שלא נוצרו, בגלל האופן שבו טעוני תלות כאלה נטענים על ידי המהדר מדור קודם.
  • תמיכה עבור $elementברכיב משודרג templateואת templateURLהפונקציות.
  • עבור Bazel, משתמשים יכולים כעת להעביר Bazel CompilerHost מותאם אישית עבור אוסף זוויתי, התומך בביטול של מארח המהדר TypeScript.
  • מספר תיקוני באגים, כולל הגדלת מגבלת הזיכרון של ngcמתחת ל- Bazel מ -2 GB ל -4 GB.

תכונות חדשות ב- Angular 8.1

  • עוזרי בדיקה ניתנים לספריית השדרוג / הסטטי המחברים מזרקי Angular ו- AngularJS ללא צורך במגף מלא של אפליקציה היברידית.
  • היעדר שילוב עם מסגרת האיתור לאינטרנט, אשר Angular תמכה בעבר בבדיקות ביצועים. צוות הפיתוח של Angular ציין כי השילוב לא נשמר וככל הנראה אינו פועל ברוב היישומים של Angular כיום. 
  • יישום של definitionAndBoundSpan, המועדף כעת על פני definition. היישום של definitionשוחזר ופשט.
  • הוצאת משימוש של ממשקי ה- API של עובדי הרשת. הכללת התמיכה הזו הייתה ניסיונית, לנסות להריץ יישום שלם ב- Web Worker, כדי שתוכן אינטרנט יפעיל סקריפטים ברקע. תומכי זווית כבר לא מבקשים לעשות זאת.

Angular 8.1 מציע גם תיקוני באגים עבור כלי הבניין של Bazel, כמו גם את הליבה והנתב הזוויתי.

תכונות חדשות ב- Angular 8.0

השיפורים ב- Angular 8, שפורסמו במאי 2019, כוללים את הדברים הבאים: