آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

نحوه دسترسی به اعلان Ambient ها در TypeScript

دوره های مرتبط با این مقاله

آموزش Ambient ها در TypeScript

با اعلان Ambient می توان به کامپایلر تایپ اسکریپت فهماند که سورس کد واقعی در جای دیگری وجود دارد. در صورتی که از تعدادی کتابخانه ی سوم شخص js مانند جی کوئری، انگولار جی اس و نود جی اس استفاده کنید، دیگر نمی توانید آن ها را در تایپ اسکریپت مجددا بنویسید. طی استفاده از این کتابخانه ها، تضمین امنیت نوع داده ها (typesafety) و intellisense برای برنامه نویسان تایپ اسکریپت چالش برانگیز است. اعلان Ambient در یکپارچه سازی کتابخانه های js دیگر در تایپ اسکریپت به برنامه نویسان کمک می کند.

تعریف Ambient ها

آموزش Ambient ها در TypeScript به صورت قراردادی با فرمت زیر (d.ts) در فایل اعلان نوع قرار داده می شود.

Sample.d.ts

فایل بالا، به جاوا اسکریپت transcompile نخواهد شد. بلکه این فایل برای حفظ امنیت نوع داده و intellisense استفاده می شود. سینتکس اعلان متغیرها یا ماژول های ambient را در زیر مشاهده می کنید

سینتکس

declare module Module_Name {
}

در فایل کلاینت تایپ اسکریپت باید به فایل های ambient اشاره کرد.

/// < reference path=" Sample.d.ts" / >

مثال

برای درک بهتر به مثال زیر می پردازیم. فرض کنید که کتابخانه ی سوم شخصی را در اختیار دارید که شامل کدی مشابه با کد زیر است.

FileName: CalcThirdPartyJsLib.js 
var TutorialPoint;  
(function (TutorialPoint) {  
   var Calc = (function () { 
      function Calc() { 
      } 
      Calc.prototype.doSum = function (limit) {
         var sum = 0; 
         
         for (var i = 0; i <= limit; i++) { 
            Calc.prototype.doSum = function (limit) {
               var sum = 0; 
               
               for (var i = 0; i <= limit; i++) { 
                  sum = sum + i; 
                  return sum; 
                  return Calc; 
                  TutorialPoint.Calc = Calc; 
               })(TutorialPoint || (TutorialPoint = {})); 
               var test = new TutorialPoint.Calc();
            }
         }
      }
   }
} 

شما به عنوان برنامه نویس تایپ اسکریپت، زمان لازم برای بازنویسی این کتابخانه در تایپ اسکریپت را ندارید. با این حال نیاز است که متد doSum() را با حفظ امنیت نوع داده مورد استفاده قرار دهید. برای این کار می توانید از فایل اعلان ambient استفاده کنید. بیایید فایل اعلان ambient ، Calc.d.ts را ایجاد کنیم.

FileName: Calc.d.ts 
declare module TutorialPoint { 
   export class Calc { 
      doSum(limit:number) : number; 
   }
}

فایل های Ambient تنها شامل اعلان نوع داده می شوند و پیاده سازی را پوشش نمی دهند. حالا نیاز است که مانند زیر اعلان فایل را در تایپ اسکریپت وارد کنید.

FileName : CalcTest.ts  
/// < reference path = "Calc.d.ts" / > 
var obj = new TutorialPoint.Calc(); 
obj.doSum("Hello"); // compiler error 
console.log(obj.doSum(10));

کد زیر باعث بروز خطا در کامپایلر می شود. دلیل این خطا این است که ما در فایل اعلانی مشخص کرده ایم که پارامتر ورودی عدد است.

obj.doSum("Hello");

این کد را به کامنت تبدیل کرده و برنامه را با استفاده از سینتکس زیر کامپایل کنید.

tsc CalcTest.ts

بعد از کامپایل کردن کد بالا، کد زیر در جاوا اسکریپت ایجاد می شود (CalcTest.js).

//Generated by typescript 1.8.10
/// < reference path = "Calc.d.ts" / >
var obj = new TutorialPoint.Calc();

// obj.doSum("Hello");
console.log(obj.doSum(10));

برای اینکه بتوانیم این کد را اجرا کنیم، باید مانند زیر یک صفحه ی html را به همراه تگ های script اضافه کنیم. فایل CalcTest.js کامپایل شده و فایل کتابخانه ای سوم شخص CalcThirdPartyJsLib.js را اضافه کنید.

< html > 
   < body style = "font-size:30px;" > 
      < h1 >Ambient Test< /h1 > 
      < h2 >Calc Test< /h2 > 
   < /body > 
   
   < script src = "CalcThirdPartyJsLib.js" >< /script > 
   < script src = "CalcTest.js" >< /script > 
< /html >

بعد از انجام این کار صفحه ی زیر نمایش داده می شود.


آموزش Ambient در Type Script

و در کنسول خروجی زیر را می توانید مشاهده کنید.

66

به طور مشابه براساس نیاز خود می توانید از jquery.d.ts یا angular.d.ts نیز در پروژه های خود استفاده کنید.

شما می توانید برای مشاهده دوره Front-End و یا Angular 6 کلیک نمایید .

  • 279
  •    6
  • تاریخ ارسال :   1397/06/17

دانشجویان گرامی اگر این مطلب برای شما مفید بود لطفا ما را در GooglePlus محبوب کنید
رمز عبور: tahlildadeh.com یا www.tahlildadeh.com
ارسال دیدگاه نظرات کاربران
شماره موبایل دیدگاه
عنوان پست الکترونیک

ارسال

آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

تمامی حقوق این سایت متعلق به آموزشگاه تحلیل داده می باشد .