71 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| title: Template Literals
 | |
| localeTitle: قالب حرفية
 | |
| ---
 | |
| ## قالب حرفية
 | |
| 
 | |
| ## المقدمة:
 | |
| 
 | |
| عندما نريد استخدام المتغير لإنشاء سلسلة ، يصبح مؤلماً للغاية حيث يتعين علينا استخدام إشارة + لسَلسَط وتتبع عروض الأسعار.
 | |
| 
 | |
| الآن مع ES6 ، يمكننا إنشاء سلسلة باستخدام backticks واستخدام العناصر النائبة المشار إليها بعلامة الدولار والأقواس المجعدة ، مثل $ {expression}.
 | |
| 
 | |
|  ``const name='John'; 
 | |
|  const city='London'; 
 | |
|  
 | |
|  Older Style: 
 | |
|  const sentence ='My name is '+ name +'. I live in '+city. 
 | |
|  ES6 way: 
 | |
|  const sentence = `My name is ${name}. I live in ${city}`; 
 | |
|  Here ${name} and ${city}are going to be interpolated by the variable name and city respectively. 
 | |
| `` 
 | |
| 
 | |
| ## سلاسل MultiLine:
 | |
| 
 | |
| نمط أقدم:
 | |
| 
 | |
| عندما أردنا أن نمتد إلى سلسلة متعددة ، كان علينا استخدام الخطوط المائلة العكسية.
 | |
| 
 | |
|  `const multipleLineString= "We have \ 
 | |
|  multiple lines \ 
 | |
|  here"; 
 | |
| ` 
 | |
| 
 | |
| الآن عندما نريد إنشاء سلسلة mutiline ، يمكننا الاستفادة من سلاسل القوالب. يمكننا أن تحيط سلسلة لدينا مع backticks. هذا النهج مفيد للغاية عندما نريد إنشاء بعض ترميز html الديناميكي.
 | |
| 
 | |
|  ``const htmlMarkup = ` 
 | |
|  <html> 
 | |
|  <head></head> 
 | |
|  <title>Template string</title> 
 | |
|  <body>Hello World</body> 
 | |
|  </html>`; 
 | |
| `` 
 | |
| 
 | |
| ## تداخل سلاسل قوالب:
 | |
| 
 | |
| يمكننا تداخلهم داخل بعضهم البعض.
 | |
| 
 | |
|  ``const cities =[ 
 | |
|  {name:'Delhi', year: 2010}, 
 | |
|  {name:'Mumbai', year: 2015}, 
 | |
|  {name:'Kolkata', year: 2017}]; 
 | |
|  
 | |
|  
 | |
|  const markup = ` 
 | |
|  <ul> 
 | |
|  ${cities.map(city=>`<li>I lived in ${city.name} in the year ${city.year}</li>`).join('')} 
 | |
|  </ul>`; 
 | |
| `` 
 | |
| 
 | |
| هنا يقوم عامل التشغيل بعد وظيفة الخريطة بإزالة الفواصل الإضافية التي تتم إضافتها بعد كل li.
 | |
| 
 | |
| ## إذا البيانات والوظائف
 | |
| 
 | |
| يمكننا أيضًا استخدام عبارات If داخل سلاسل القالب.
 | |
| 
 | |
|  ``const data = {name: 'John', city: 'London', birthyear: 1900}; 
 | |
|  const markup = `<div>${data.name} lives in ${data.city}. ${data.birthyear ? `<div>He was born in the year ${data.birthyear}</div>`:''}</div>`; 
 | |
| `` 
 | |
| 
 | |
| في المثال أعلاه ، إذا تم تعريف الميلاد ، فحينئذٍ يتم إنشاء محتويات "ولد في السنة" ، وإلا لن يكون هناك قسم تم إنشاؤه.
 | |
| 
 | |
| يمكننا أيضا استدعاء وظائف داخل سلاسل القالب. |