Ho un modulo che dipende da Backbone
. Ho una definizione backbone.d.ts
ma dattiloscritto non sembra voler compilare il mio modulo meno che il mioImportare il modulo TypeScript usando solo la definizione ambiente per l'uso nell'am
import Backbone = module("backbone")
in realtà punta a un modulo dorsale valida al contrario di un file di definizione. Sto usando i moduli caricati AMD e ho uno shim richiesto per il backbone.
Esiste una soluzione alternativa oltre alla creazione di una definizione del modulo backbone.ts telefonica?
Aggiornamento: Un effetto collaterale della soluzione è che il codice come questo non funziona più perché il modulo non esiste più. Deve esistere a causa dello shim requirejs. L'unica soluzione che so di avere due file .d.ts. Uno per il file che utilizza il backbone come un'importazione che non include il bit declare module
. L'altro per l'utilizzo di /// <reference
include la riga declare module
.
/// <reference path="../dep/backbone/backbone.d.ts" />
interface IApi {
version: number;
Events: Backbone.Events;
}
Sto solo cercando questo per reale in Visual Studio e AM ricreando il tuo problema. Fammi vedere se riesco a risolvere questo problema! – Fenton
Nel mio test, ho trovato che la Dichiarazione Ambientale deve omettere il blocco 'module', proprio come farebbe un normale modulo in AMD o CommonJS. – Fenton
Eccellente, grazie! – ryan