Giống như @takeshin đã nói .d là viết tắt của tệp khai báo cho bản thảo (.ts).
Vài điểm cần được làm rõ trước khi tiếp tục trả lời bài đăng này -
- Bản đánh máy là siêu cú pháp cú pháp của javascript.
- Bản mô tả không tự chạy, nó cần được dịch mã thành javascript ( bản thảo để chuyển đổi javascript )
- "Định nghĩa kiểu" và "Kiểm tra kiểu" là các chức năng bổ trợ chính mà bản thảo cung cấp qua javascript. ( kiểm tra sự khác biệt giữa tập lệnh loại và javascript )
Nếu bạn đang suy nghĩ nếu typecript chỉ là superset cú pháp thì nó mang lại lợi ích gì - https://basarat.gitbooks.io/typescript/docs/why-typescript.html#the-typescript-type-system
Để trả lời bài này -
Như chúng ta đã thảo luận, typecript là siêu dữ liệu của javascript và cần được dịch mã thành javascript. Vì vậy, nếu một thư viện hoặc mã bên thứ ba được viết bằng bản in, cuối cùng nó sẽ được chuyển đổi thành javascript, dự án javascript có thể được sử dụng nhưng ngược lại không đúng.
Dành cho người cũ
Nếu bạn cài đặt thư viện javascript -
npm install --save mylib
và thử nhập nó trong mã bản in -
import * from "mylib";
bạn sẽ nhận được lỗi.
"Không thể tìm thấy mô-đun 'mylib'."
Như được đề cập bởi @Chris, nhiều thư viện như gạch dưới, Jquery đã được viết bằng javascript. Thay vì viết lại các thư viện đó cho các dự án bản thảo, một giải pháp thay thế là cần thiết.
Để thực hiện việc này, bạn có thể cung cấp tệp khai báo kiểu trong thư viện javascript có tên là * .d.ts, như trong trường hợp trên mylib.d.ts. Tệp khai báo chỉ cung cấp khai báo kiểu của các hàm và biến được định nghĩa trong tệp javascript tương ứng.
Bây giờ khi bạn cố gắng -
import * from "mylib";
mylib.d.ts được nhập vào, hoạt động như một giao diện giữa mã thư viện javascript và dự án bản thảo.