reactjs - איך לגרום ל-prettier autoformatter ב-VScode לא להסיר פסיקים מסוגי TypeScript אחרי שהוספתי React


כאשר אני שומר קובץ עם הפורמט האוטומטי פעיל, הסוג

type Params = {
  fileName: string,
  isTxt: boolean
}

יישמר כ

type Params = {
  fileName: string
  isTxt: boolean
}

שבתגובה כבר לא מתקבלת על ידי React. Prettier התחיל למחוק את הפסיקים רק אחרי שהוספתי את React לפרויקט. איך אני עושה ש-Prettier לא יעשה את זה?

אני משתמש בהרחבת Prettier גרסה 9.0.0 וב-Typescript גרסה 4.5.2 ב-VScode גרסה 1.62.3.

שימוש ב-.prettierrc

{
  "semi": false,
  "trailingComma": "none",
  "singleQuote": true,
  "printWidth": 80
}

תשובה #1

אתה יכול להגדיר את trailingComma ל-all

תשובה #2

אני לא בטוח אם זה קשור ל-React. אבל מהבדיקה שלי בפרויקט שאינו React, Prettier מעצב את קבצי ה-.ts וה-.tsx באותו אופן כאשר אתה מגדיר במפורש את semi ל-false, כפי שעשית.

type Params = {
  fileName: string
  isTxt: boolean
}

וכאשר semi הוא true:

type Params = {
  fileName: string;
  isTxt: boolean;
}

נכון לעכשיו (2023), שניהם חוקיים ב-TypeScript. כך או כך, פסיקים לא נשמרים. זו התוצאה לפי הדעה של Prettier. זה נדון, שונה, ונדון שוב. סוגיית Prettier הזו ב-GitHub מסכמת את זה די טוב.

אלטרנטיבי

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

  • Beautify (9.8 מיליון הורדות, מיושן)

אנא ודא שאתה בוחן את זה ביסודיות לפני השימוש.