Apelarea JavaScript direct din masina de scris

voturi
18

Tocmai am descarcat documentația dactilografiate. Am un unele clase JavaScript și aș dori să creeze și să utilizeze aceste clasă într-o aplicație de testare typescript

Cum pot apela o funcție JavaScript de JavaScript pentru a inclus de la dactilografiate. Nu vreau să creați un „d.ts“ fișier. Doar pentru a crea clase mele, apel metodele sale, a avea acces la proprietățile sale.

Cum să fac asta?


Am încercat să folosească kendoUI cu dactilografiate.

De exemplu, pentru a afișa o fereastră trebuie să fac:

  1. Au un HTML pentru a reprezenta conținutul unei ferestre. Am un div cu id logonDialog. Acest div
    este inițial ascuns;
  2. Am crea fereastra: logonDlg.kendoWindow (logOnParams);
  3. Apoi, folosind jQuery am arăta div: folosind logonDlg.show();

Exemplu

var logonDlg = $(logonDialog);

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

Acesta funcționează OK. JS este generat ca vreau, dar am primit o eroare, deoarece Proprietatea „kendoWindow“ nu exista pe valoarea de tip „JQuery“.

Cum pot dezactiva acest tip de eroare. Nu am putut face, ceea ce a spus Ryan, la locul de muncă.

Întrebat 03/10/2012 la 15:45
sursa de către utilizator
În alte limbi...                            


4 răspunsuri

voturi
22

Dacă doriți să opriți erorile fără a face mult de lucru altceva in plus, poti „declara“ obiectele din codul 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.
Publicat 03/10/2012 la 16:18
sursa de către utilizator

voturi
8

Există o soluție mai bună. Doar aruncat jQuery logonDlg la orice astfel:

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

Codul va fi un pic diferit, dar se va lucra la fel.

  1. Fara distributie - lea cod generat este ca aceasta: logonDlg.kendoWindow (logOnParams);
  2. Cu distributie va fi astfel: (logonDlg) .kendoWindow (logOnParams);

Ambele funcționează OK.

Salutari

Publicat 05/10/2012 la 18:02
sursa de către utilizator

voturi
5

Tu doar o faci. Typescript nu te va opri. Vei vedea avertismente în ieșire compilator , dar tscva genera fișierul JS foarte bine.

Publicat 03/10/2012 la 15:50
sursa de către utilizator

voturi
4

În acest caz particular ai putea include doar definițiile Kendo UI typescript care Telerik oferă.

(Îmi dau seama că această întrebare a fost întrebat din nou atunci când definițiile TS, probabil, nu există încă, dar a dorit să adauge acest detaliu pentru cei care vin peste această întrebare în viitor.)

Publicat 30/03/2015 la 12:28
sursa de către utilizator

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