Chiamata JavaScript direttamente da dattiloscritto

voti
18

Ho appena scaricato la documentazione dattiloscritto. Ho un alcune classi JavaScript e vorrei creare e utilizzare questi classe in un'applicazione di test dattiloscritto

Come posso chiamare una funzione JavaScript di un JavaScript incluso dal dattiloscritto. Non voglio creare un file d.tS. Proprio per creare le mie classi, chiamare i suoi metodi, le proprietà.

Come lo faccio?


Sto cercando di usare kendoUI con dattiloscritto.

Per esempio per mostrare una finestra che devo fare:

  1. Avere un HTML per rappresentare il contenuto di una finestra. Ho un div con un id logonDialog. Questo div
    è inizialmente nascosto;
  2. Creo la finestra: logonDlg.kendoWindow (logOnParams);
  3. Quindi, utilizzando jQuery mostro il div: utilizzando logonDlg.show();

Esempio

var logonDlg = $(logonDialog);

if (!logonDlg.data(kendoWindow)) {
   logonDlg.kendoWindow(logOnParams);
   logonDlg.show();
}

Si sta lavorando su OK. Il JS è generato come voglio, ma ricevo un errore poiché la proprietà 'kendoWindow' non esiste sul valore di tipo 'JQuery'.

Come è possibile disattivare questo tipo di errore. Non ho potuto fare, quello che ha detto Ryan, a lavorare.

È pubblicato 03/10/2012 alle 15:45
fonte dall'utente
In altre lingue...                            


4 risposte

voti
22

Se si desidera interrompere gli errori senza fare molto lavoro altro in più, si puo 'dichiarare' gli oggetti dal codice JS:

declare var w; // implicit type here is 'any'
// (later, anywhere in your file...)
var x = new w(); // you can do whatever you want with w now without getting errors
w.x = 4; // etc.
Risposto il 03/10/2012 a 16:18
fonte dall'utente

voti
8

C'è una soluzione migliore. Basta lanciare l'jQuery logonDlg a qualsiasi in questo modo:

(<any>logonDlg).kendoWindow(logOnParams);

Il codice sarà un po 'diverso, ma funziona lo stesso.

  1. Senza il cast esimo codice generato è come questo: logonDlg.kendoWindow (logOnParams);
  2. Con il cast sarà come questo: (logonDlg) .kendoWindow (logOnParams);

Entrambi funzionano OK.

Saluti

Risposto il 05/10/2012 a 18:02
fonte dall'utente

voti
5

Lo fai e basta. Dattiloscritto non si fermerà te. Vedrete le avvertenze del output del compilatore, ma tscgenererà il file JS bene.

Risposto il 03/10/2012 a 15:50
fonte dall'utente

voti
4

In questo caso particolare si può solo includere le definizioni Kendo UI dattiloscritto che Telerik fornisce.

(Mi rendo conto che questa domanda è stato chiesto indietro quando le definizioni TS probabilmente non esistevano ancora, ma ha voluto aggiungere questo dettaglio per le persone che vengono in tutta questa domanda in futuro.)

Risposto il 30/03/2015 a 12:28
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more