پرسش

نام کامپوننت‌ها داخل React باید با حروف بزرگ شروع بشه؟

ReactJS - Component names must begin with capital letters

من تازه شروع کردم با ReactJS کار کنم و به یه خطای عجیبی برخوردم. وقتی دارم کامپوننت‌های خودم رو تعریف می‌کنم، یه خطای "Component names must begin with capital letters" بهم میده. کسی می‌تونه راهنمایی کنه چرا این خطا رو می‌گیرم و چطور باید درستش کنم؟ ممنون میشم.

1403/05/31
پاسخ
محمدامین سعیدی راد
بیوگرافی محمدامین سعیدی راد

سلام! این خطایی که داری می‌گیری به خاطر اینه که در ReactJS، نام کامپوننت‌ها باید با حروف بزرگ شروع بشه. این یه قانونیه که React برای تشخیص کامپوننت‌ها از عناصر HTML عادی استفاده می‌کنه. وقتی نام کامپوننت با حرف کوچیک شروع بشه، React فکر می‌کنه که داری از یه عنصر HTML استفاده می‌کنی، نه یک کامپوننت React.

فرض کن یه کامپوننت به نام myComponent تعریف کردی:

function myComponent() {
 return <div> Sabzlearn React App </div>;
}

اینجا، چون اسم کامپوننت با حرف کوچیک شروع شده، React فکر می‌کنه که myComponent یه تگ HTML هست و به خاطر همین بهت خطا میده.

برای حل این مشکل، باید اسم کامپوننت رو با حرف بزرگ شروع کنی، مثلا:

function MyComponent() {
 return <div>Hello, World!</div>;
}

با این تغییر، React متوجه میشه که MyComponent یه کامپوننت React هست و دیگه خطایی نمی‌گیری.

پاسخ: 1403/05/31
آخرین آپدیت: 1403/07/21