File d.ts DefinitelyTyped dan Modul Amd dengan TypeScript
Saya mengimpor sebagian besar modul DefinitelyTyped saya dari https://github.com/borisyankov/DefinitelyTyped dengan nuget.
Saya bertanya-tanya apakah ada sesuatu yang saya lewatkan karena saya menemukan semuanya tidak mendukung AMD.
Di sebagian besar modul, saya menambahkan ini sendiri:
declare module "toastr" {
export = Toastr;
}
declare module "knockout.validation" {
export = KnockoutValidationStatic;
}
declare module "knockoutmapping" {
export = KnockoutMapping;
}
declare module "jquery" {
export = $;
}
Saat melakukan ini saya bisa melakukan hal berikut:
import $ = require('jquery');
import toastr = require('toastr');
dan itu menghasilkan modul AMD saya dengan benar.
define(["require", "exports", 'toastr'], function(require, exports, __toastr__) {
}
Saya bertanya-tanya apakah ada cara lain untuk melakukan ini karena saya menemukan ekspor amd yang didefinisikan di d.ts hilang untuk sebagian besar pustaka.
Jawaban #1
Beberapa definisi memang memiliki bagian ini misalnya Underscore. Alasan mengapa banyak dari mereka tidak memilikinya adalah karena nama import tergantung pada bagaimana Anda mengonfigurasi requirejs dan nama jalur singkat yang Anda pilih dalam konfigurasi Anda.