83 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			83 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | ||
|  | title: State vs Props | ||
|  | localeTitle: الدولة مقابل الدعائم | ||
|  | ---
## الدولة مقابل الدعائم
 | ||
|  | 
 | ||
|  | عندما نبدأ العمل مع مكونات React ، فإننا نسمع بشكل متكرر فترتين. هم `state` `props` . لذلك ، في هذه المقالة سوف نستكشف ما هي تلك وكيف تختلف. | ||
|  | 
 | ||
|  | ## حالة:
 | ||
|  | 
 | ||
|  | *   الدولة هي شيء يمتلكه المكون. إنه ينتمي إلى ذلك المكون المحدد حيث يتم تعريفه. على سبيل المثال ، عمر الشخص هو حالة ذلك الشخص. | ||
|  | *   الدولة قابلة للتغيير. ولكن لا يمكن تغييره إلا عن طريق ذلك العنصر الذي يملكه. لأنني لا أستطيع سوى تغيير عمري ، وليس أي شخص آخر. | ||
|  | *   يمكنك تغيير حالة باستخدام هذا `this.setState()` | ||
|  | 
 | ||
|  | انظر المثال أدناه للحصول على فكرة عن الحالة: | ||
|  | 
 | ||
|  | #### Person.js
 | ||
|  | 
 | ||
|  |  `  import React from 'react';  | ||
|  |   | ||
|  |   class Person extends React.Component{  | ||
|  |     constructor(props) {  | ||
|  |       super(props);  | ||
|  |       this.state = {  | ||
|  |         age:0  | ||
|  |       this.incrementAge = this.incrementAge.bind(this)  | ||
|  |     }  | ||
|  |   | ||
|  |     incrementAge(){  | ||
|  |       this.setState({  | ||
|  |         age:this.state.age + 1;  | ||
|  |       });  | ||
|  |     }  | ||
|  |   | ||
|  |     render(){  | ||
|  |       return(  | ||
|  |         <div>  | ||
|  |           <label>My age is: {this.state.age}</label>  | ||
|  |           <button onClick={this.incrementAge}>Grow me older !!<button>  | ||
|  |         </div>  | ||
|  |       );  | ||
|  |     }  | ||
|  |   }  | ||
|  |   | ||
|  |   export default Person;  | ||
|  | `  | ||
|  | 
 | ||
|  | في المثال أعلاه ، `age` هو مكون حالة `Person` . | ||
|  | 
 | ||
|  | ## الدعائم:
 | ||
|  | 
 | ||
|  | *   الدعائم تشبه حجج الأسلوب. يتم تمريرها إلى مكون حيث يتم استخدام هذا المكون. | ||
|  | *   الدعائم غير قابلة للتغيير. هم للقراءة فقط. | ||
|  | 
 | ||
|  | انظر المثال أدناه للحصول على فكرة من الدعائم: | ||
|  | 
 | ||
|  | #### Person.js
 | ||
|  | 
 | ||
|  |  `  import React from 'react';  | ||
|  |   | ||
|  |   class Person extends React.Component{  | ||
|  |     render(){  | ||
|  |       return(  | ||
|  |         <div>  | ||
|  |           <label>I am a {this.props.character} person.</label>  | ||
|  |         </div>  | ||
|  |       );  | ||
|  |     }  | ||
|  |   }  | ||
|  |   | ||
|  |   export default Person;  | ||
|  |   | ||
|  |   const person = <Person character = "good"></Person>  | ||
|  | `  | ||
|  | 
 | ||
|  | في المثال أعلاه ، `const person = <Person character = "good"></Person>` نقوم بتمرير `character = "good"` للدعم إلى مكون `Person` . | ||
|  | 
 | ||
|  | يعطي الناتج "أنا شخص جيد" ، في الحقيقة أنا. | ||
|  | 
 | ||
|  | هناك الكثير لتعلمه على State and Props. يمكن تعلم الكثير من الأشياء عن طريق الغوص في الترميز. حتى الحصول على يديك القذرة بواسطة الترميز. | ||
|  | 
 | ||
|  | اتصل بي على [twitter](https://twitter.com/getifyJr) إذا لزم الأمر. | ||
|  | 
 | ||
|  | الترميز سعيدة! |