@ টাকেশিনের মত .d টাইপস্ক্রিপ্ট (.ts) এর জন্য ডিক্লোরেশন ফাইল।
এই পোস্টের উত্তর দেওয়ার আগে কয়েকটি বিষয় পরিষ্কার করা উচিত -
- টাইপস্ক্রিপ্ট জাভাস্ক্রিপ্টের সিনট্যাকটিক সুপারসেট।
- টাইপসক্রিপ্টটি নিজে থেকে চালিত হয় না, এটি জাভাস্ক্রিপ্টে স্থানান্তরিত করা দরকার ( টাইপস্ক্রিপ্ট থেকে জাভাস্ক্রিপ্ট রূপান্তর )
- "প্রকারের সংজ্ঞা" এবং "টাইপ চেকিং" প্রধান অ্যাড-অন কার্যকারিতা যা টাইপস্ক্রিপ্ট জাভাস্ক্রিপ্টের উপরে সরবরাহ করে। ( টাইপ স্ক্রিপ্ট এবং জাভাস্ক্রিপ্টের মধ্যে পার্থক্য পরীক্ষা করুন )
আপনি যদি ভাবছেন যদি টাইপস্ক্রিপ্টটি কেবল সিনট্যাকটিক সুপারসেট হয় তবে এটি কী উপকার করে - https://basarat.gitbooks.io/typescript/docs/why-typescript.html#the-typescript-type-s systemm
এই পোস্টের উত্তর দিতে -
যেমনটি আমরা আলোচনা করেছি, টাইপস্ক্রিপ্ট জাভাস্ক্রিপ্টের সুপারস্টেট এবং জাভাস্ক্রিপ্টে স্থানান্তরিত করা দরকার needs সুতরাং যদি কোনও লাইব্রেরি বা তৃতীয় পক্ষের কোড টাইপ স্ক্রিপ্টে লেখা হয় তবে এটি শেষ পর্যন্ত জাভাস্ক্রিপ্টে রূপান্তরিত হয় যা জাভাস্ক্রিপ্ট প্রকল্প দ্বারা ব্যবহার করা যেতে পারে তবে তদ্বিপরীত সত্য হয় না।
প্রাক্তন জন্য -
আপনি যদি জাভাস্ক্রিপ্ট লাইব্রেরি ইনস্টল করেন -
npm install --save mylib
এবং এটি টাইপ স্ক্রিপ্ট কোডে আমদানির চেষ্টা করুন -
import * from "mylib";
আপনি ত্রুটি পাবেন।
"মডিউল 'ম্যালিব' খুঁজে পাচ্ছেন না" "
@ ক্রিস দ্বারা উল্লিখিত হিসাবে, আন্ডারস্কোর, জ্যাকুরির মতো অনেক লাইব্রেরি ইতিমধ্যে জাভাস্ক্রিপ্টে লিখিত আছে। টাইপ স্ক্রিপ্ট প্রকল্পগুলির জন্য এই লাইব্রেরিগুলিকে পুনরায় লেখার পরিবর্তে বিকল্প সমাধানের প্রয়োজন ছিল।
এটি করার জন্য, আপনি জাভাস্ক্রিপ্ট লাইব্রেরিতে টাইপ ডিক্লেয়ারেশন ফাইল সরবরাহ করতে পারেন * .d.ts হিসাবে উপরের ক্ষেত্রে যেমন mylib.d.ts। ডিক্লারেশন ফাইলটি কেবল সংশ্লিষ্ট জাভাস্ক্রিপ্ট ফাইলে সংজ্ঞায়িত ফাংশন এবং ভেরিয়েবলগুলির প্রকারের ঘোষণা সরবরাহ করে।
এখন যখন আপনি চেষ্টা করুন -
import * from "mylib";
mylib.d.ts আমদানি হয়ে যায় যা জাভাস্ক্রিপ্ট লাইব্রেরি কোড এবং টাইপস্ক্রিপ্ট প্রকল্পের মধ্যে একটি ইন্টারফেস হিসাবে কাজ করে।