freeCodeCamp/guide/arabic/react/jsx/index.md

74 lines
2.0 KiB
Markdown

---
title: JSX
localeTitle: JSX
---
# JSX
> JSX مختصرة لـ JavaScript XML.
JSX هو تعبير يستخدم عبارات HTML صالحة داخل JavaScript. يمكنك تعيين هذا التعبير لمتغير واستخدامه في مكان آخر. يمكنك الجمع بين تعبيرات JavaScript سارية أخرى و JSX في عبارات HTML هذه من خلال وضعها ضمن أقواس ( `{}` ). تقوم بابل كذلك بتجميع JSX إلى كائن من النوع `React.createElement()` .
### تعبيرات أحادية السطر ومتعددة الأسطر
تعبير سطر مفرد سهل الاستخدام.
`const one = <h1>Hello World!</h1>;
`
عندما تحتاج إلى استخدام أسطر متعددة في تعبير JSX واحد ، اكتب الرمز داخل قوس واحد.
`const two = (
<ul>
<li>Once</li>
<li>Twice</li>
</ul>
);
`
### باستخدام علامات HTML فقط
`const greet = <h1>Hello World!</h1>;
`
### الجمع بين تعبير JavaScript مع علامات HTML
يمكننا استخدام متغيرات جافا سكريبت في الأقواس.
`const who = "Quincy Larson";
const greet = <h1>Hello {who}!</h1>;
`
يمكننا أيضًا استدعاء وظائف JavaScript الأخرى داخل الأقواس.
`function who() {
return "World";
}
const greet = <h1>Hello {who()}!</h1>;
`
### يُسمح فقط بعلامة أصل واحدة
يجب أن يحتوي تعبير JSX على علامة رئيسية واحدة فقط. يمكننا إضافة عدة علامات متداخلة داخل العنصر الأصل فقط.
`// This is valid.
const tags = (
<ul>
<li>Once</li>
<li>Twice</li>
</ul>
);
// This is not valid.
const tags = (
<h1>Hello World!</h1>
<h3>This is my special list:</h3>
<ul>
<li>Once</li>
<li>Twice</li>
</ul>
);
`
### معلومات اكثر
* [تقديم JSX](https://reactjs.org/docs/introducing-jsx.html)