آموزش کامپوننت ها در react و بررسی آن
7 شهریور 1400
ارسال شده توسط محمد کریمی
1.06k بازدید

ما در این مقاله قصد داریم چگونگی استفاده از کامپوننت ها در React را به صورت کامل برای شما عزیزان آموزش دهیم همراه بوتواستارت باشید.
کامپوننت ها : نمونه Stateless
اولین components موجود در این مثال، کامپوننت App است که به عنوان components صاحب (اصلی) برای components های Header و Content در نظر گرفته می شود.
ما components های Header و Content را به صورت جداگانه ایجاد و در components App اضافه می کنیم.
محتوای فایل App.jsx:
import React from 'react'; class App extends React.Component { render() { return ( <div> <Header/> <Content/> </div> ); } } class Header extends React.Component { render() { return ( <div> <h1>Header</h1> </div> ); } }
class Content extends React.Component { render() { return ( <div> <h2>Content</h2> <p>The content text!!!</p> </div> ); } } export default App;
برای اینکه بتوانیم این صفحه را رندر کنیم، باید آن را در main.js اضافه کنیم.
محتوای فایل main.js:
به مثال زیر توجه کنید:
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App.jsx'; ReactDOM.render(<App />, document.getElementById('app'));
کد فوق خروجی زیر را تولید می کند:
reactjs components 6093 1 تصویر
کامپوننت ها : نمونه Stateful
در این مثال ما state را برای کامپوننت App تنظیم خواهیم کرد.
components Header مانند مثال بالا اضافه می شود، اما برای components Content ما یک جدول ایجاد کرده ایم و به صورت پویا داده های موجود در آرایه data را به یک نمونه از TableRow تبدیل کرده و وارد می کنیم.
در کد زیر ما از سینتکس EcmaScript 2015 استفاده کرده ایم (=>) که بسیار تمیز تر از سینتکس قدیمی جاوا اسکریپت است.
استفاده از این سینتکس به ما کمک می کند تا خطوط کدهای نوشته شده را کاهش دهیم.
همچنین در هنگام ایجاد لیست هایی با تعداد آیتم زیاد بسیار مفید است.
محتوای فایل App.jsx:
import React from 'react'; class App extends React.Component { constructor() { super(); this.state = { data: [ {
"id":1, "name":"Foo", "age":"20" }, { "id":2, "name":"Bar", "age":"30" }, { "id":3, "name":"Baz", "age":"40" } ] } } render() { return ( <div> <Header/> <table> <tbody> {this.state.data.map((person, i) => <TableRow key = {i} data = {person} />)} </tbody> </table> </div> ); } } class Header extends React.Component { render() { return ( <div> <h1>Header</h1> </div> ); } } class TableRow extends React.Component { render() { return ( <tr> <td>{this.props.data.id}</td> <td>{this.props.data.name}</td> <td>{this.props.data.age}</td> </tr> ); } } export default App;
کامپوننت ها : محتوای فایل main.js:
به مثال زیر توجه کنید:
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App.jsx'; ReactDOM.render(<App/>, document.getElementById('app'));
توجه داشته باشید که ما از key = {i} در داخل تابع map() استفاده کرده ایم.
این موضوع به React کمک می کند تا به جای دوباره رندر کردن کل لیست، فقط عناصری که تغییر کرده اند را رندر کند.
امیدوارم که مقاله آموزش کامپوننت ها در react و بررسی آن برای شما عزیزان مفید بوده باشد.
بوتواستارت را در شبکه های اجتماعی بخصوص اینستاگرام دنبال کنید.
مطالب زیر را حتما مطالعه کنید
چند دلیل مهم که باید Node.js رو یاد بگیری
دلتون میخواد Node.js رو یاد بگیرید؟ توی این مقاله دلایل مهمی ذکر شده که باید...
بهترین libraries برای react در سال 2021
ما در این مقاله قصد داریم بهترین کتابخانه ها یا libraries برای react در سال...
آموزش اتصال به react و redux به صورت کامل
ما در این آموزش قصد داریم اتصال به React و Redux را به صورت کامل...
اشتباهات react و آشنایی با رایج ترین آنها در ری اکت
کتابخانه react در حال حاضر یکی از بزرگ ترین کتابخانه های طراحی front-end است و...
آموزش تگ های کوتیشن در HTML و آشنایی با عناصر Quotation در آن
تگ های کوتیشن و یا نقل قول در اچ تی ام ال از اهمیت زیادی...
Style ها در HTML و آشنایی با آن
تمامی تگ های HTML صفتی به نام Style دارند که میتوان با مقدار دهی آن...
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.