React DOM Components

React תומכת בכל רכיבי הדפדפן המובנים של HTML ושל SVG.


רכיבים נפוצים

כל רכיבי הדפדפן המובנים תומכים בחלק מה-props ובאירועים.

זה כולל גם props ייחודיים ל-React כמו ref ו-dangerouslySetInnerHTML.


רכיבי טפסים

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

הם מיוחדים ב-React כי העברת prop בשם value אליהם הופכת אותם ל-* controlled.*


רכיבי משאבים ומטא-דאטה

רכיבי הדפדפן המובנים האלה מאפשרים לטעון משאבים חיצוניים או להוסיף מטא-דאטה למסמך:

הם מיוחדים ב-React כי React יכולה לרנדר אותם ל-head של המסמך, לבצע suspend בזמן טעינת משאבים, ולהפעיל התנהגויות נוספות שמתוארות בדף ה-reference של כל רכיב.


כל רכיבי ה-HTML

React תומכת בכל רכיבי ה-HTML המובנים של הדפדפן. הרשימה כוללת:

Note

בדומה ל-תקן DOM, ב-React משתמשים בקונבנציה של camelCase לשמות props. לדוגמה, תכתבו tabIndex במקום tabindex. אפשר להמיר HTML קיים ל-JSX באמצעות ממיר אונליין.


אלמנטים מותאמים אישית של HTML

אם תרנדרו תגית עם מקף, כמו <my-element>, React תניח שאתם רוצים לרנדר custom HTML element. ב-React רינדור אלמנטים מותאמים אישית עובד אחרת מרינדור תגיות דפדפן מובנות:

  • כל props של custom elements עוברים serialization למחרוזות ותמיד נקבעים באמצעות attributes.
  • custom elements מקבלים class במקום className, ו-for במקום htmlFor.

אם תרנדרו אלמנט HTML מובנה עם attribute בשם is, הוא יטופל גם הוא כ-custom element.

Note

גרסה עתידית של React תכלול תמיכה רחבה יותר ב-custom elements.

אפשר לנסות זאת על ידי שדרוג חבילות React לגרסה הניסיונית האחרונה:

  • react@experimental
  • react-dom@experimental

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


כל רכיבי ה-SVG

React תומכת בכל רכיבי ה-SVG המובנים של הדפדפן. הרשימה כוללת:

Note

בדומה ל-תקן DOM, ב-React משתמשים בקונבנציה של camelCase לשמות props. לדוגמה, תכתבו tabIndex במקום tabindex. אפשר להמיר SVG קיים ל-JSX בעזרת ממיר אונליין.

attributes עם namespace גם חייבים להיכתב בלי נקודתיים:

  • xlink:actuate הופך ל-xlinkActuate.
  • xlink:arcrole הופך ל-xlinkArcrole.
  • xlink:href הופך ל-xlinkHref.
  • xlink:role הופך ל-xlinkRole.
  • xlink:show הופך ל-xlinkShow.
  • xlink:title הופך ל-xlinkTitle.
  • xlink:type הופך ל-xlinkType.
  • xml:base הופך ל-xmlBase.
  • xml:lang הופך ל-xmlLang.
  • xml:space הופך ל-xmlSpace.
  • xmlns:xlink הופך ל-xmlnsXlink.