<כותרת>
רכיב הדפדפן המובהנה <title> מאפשר את כותרת המסמך.
<title>My Blog</title>הפניה
<title>
כדי לקבוע את הכותרת המסמך, רנדרו את רכיב הדפדפן המובנה <title>. אפשר לרנדר <title> מכל קומפוננטה ו-React תמיד תמקם את האלמנט ה-DOM המתאים בתוך ראש המסמך.
<title>My Blog</title>אבזרים
<title> תומך בכל מאפייני האלמנט הנפוצים.
children: רכיב<title>מקבל רק טקסט כ-ילד. הטקסט יהפוך לכותרת המסמך הזה. אפשר גם להעביר קומפונטות משלכם כל עוד הן מרנדרות רק טקסט.
התנהגות רינדור מיוחדת K_0
React תמיד תמקם את האלמנט ה-DOM מתאים ל-<title> בתוך <head> של המסמך, בלי קשר למקום שבו הוא מרונדר בעץ React. <head> הוא החוק היחיד ל-<title> בתוך ה-DOM, ובכל זאת נוח ושומר על קומפוזיציות אם קומפונטה שמציגה עמוד מסויים יכולה לרנדר בעצמה את <title> שלה.
יש שני חריגים לכך:
- אם
<title>נמצא בתוך רכיב<svg>, אין התנהגות מיוחדת, כי בהקשר הזה הוא לא מייצג את כותרת המסמך אלא הערת נגישות לגרפיקת ה-SVG. - אם ל-
<title>יש פרופס סטיילitemProp, אין התנהגות מיוחדת, כי במקרה הזה הוא לא מייצג את הכותרת המסמך אלא מטא נתונים על חלק מסוים בעמוד.
שימוש
הגדרת כותרת המסמך
רנדרו את רכיב <title> מכל קומפוננטה עם טקסט כ-ילדים שלו. React תשים DOM צומת של <title> בתוך <head> של המסמך.
import ShowRenderedHTML from './ShowRenderedHTML.js'; export default function ContactUsPage() { return ( <ShowRenderedHTML> <title>My Site: Contact Us</title> <h1>Contact Us</h1> <p>Email us at support@example.com</p> </ShowRenderedHTML> ); }
שימוש במשתנים בתוך הכותרת
ה-children של רכיב <title> חייבים להיות מחרוזת טקסט יחידה. (או מספר יחיד, או אובייקט יחיד עם מתודת toString.) זה יכול להיות לא ברור, אבל שימוש בסוגריים מסולסלים של JSX כך:
<title>Results page {pageNumber}</title> // 🔴 Problem: This is not a single string… בעצם גורם לרכיב <title> לקבל מערך של שני אלמנטים כ-children (המחרוזת "Results page" והערך של pageNumber). זה יגרום לשגיאה. במקום זאת, השתמשו ב-string interpolation כדי להעביר ל-<title> מחרוזת יחידה:
<title>{`Results page ${pageNumber}`}</title>