Вызов JavaScript непосредственно из Typeycript

StackOverflow https://stackoverflow.com//questions/12710962

  •  13-12-2019
  •  | 
  •  

Вопрос

Я только что загрузил документацию Teamplect. У меня есть несколько классов JavaScript, и я хотел бы создать и использовать этот класс в приложении TeamptScript Test

Как я могу вызвать функцию JavaScript включенного JavaScript из TypeyctScript. Я не хочу создавать файл "dts". Просто для создания моих классов позвоните его методам, доступа к его свойствам.

Как мне это сделать?


Я пытаюсь использовать Kendoui с помощью TypeyctScript.

Например, чтобы показать окно, которое я должен сделать:

    У
  1. есть HTML для представления содержимого окна. У меня есть div с идентификатором логодиалога. Это div
    изначально скрыт;
  2. Я создаю окно: logondlg.kendowindow (logonparams);
  3. Тогда используя jquery я показываю div: используя logonDlg.show();
  4. Пример

    var logonDlg = $("logonDialog");
    
    if (!logonDlg.data("kendoWindow")) {
       logonDlg.kendoWindow(logOnParams);
       logonDlg.show();
    }
    
    .

    Это работает нормально. JS генерируется, как я хочу, но я получаю ошибку, поскольку свойство «KENDOWINDOW» не существует по значению типа «jQuery».

    Как я могу отключить эту ошибку. Я не мог сделать, что сказал Райан, на работу.

Это было полезно?

Решение

Вы просто делаете это.Tymdercript не остановит вас.Вы увидите предупреждения в выходе компилятора, но tsc будет генерировать ваш файл JS просто отлично.

Другие советы

Если вы хотите остановить ошибки, не делая большую дополнительную дополнительную работу, вы можете «объявить» объекты из вашего кода 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.
.

Есть лучшее решение.Просто бросил jQuery logondlg на любой такой:

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

Код будет немного другим, но будет работать то же самое.

  1. без литого сгенерированного кода похож на это: logondlg.kendowindow (logonparams);
  2. с актером будет такой: (logondlg) .kendowindow (logonParams);
  3. Оба работы ОК.

    С уважением

В этом конкретном случае вы можете просто включить kendo ui Teamscripts определения , что Teleerik предоставляет,

(Я понимаю, что этот вопрос был задан, когда определения TS, вероятно, еще не существовали, но хотели добавить эту деталь для людей, которые сталкиваются с этим вопросом в будущем.)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top