我刚刚下载了TypeScript文档。我有一些JavaScript类,我想在TypeScript测试应用程序中创建和使用这些类
如何从TypeScript调用包含的JavaScript的JavaScript函数。我不想创建“d.ts”文件。只是为了创建我的类,调用它的方法,访问它的属性。
我该怎么做?
我正在尝试将kendoUI与TypeScript一起使用。
例如,要显示我必须要做的窗口:
logonDlg.show();
实施例
var logonDlg = $("logonDialog");
if (!logonDlg.data("kendoWindow")) {
logonDlg.kendoWindow(logOnParams);
logonDlg.show();
}
工作正常。 JS是按照我的意愿生成的,但是我收到一个错误,因为属性'kendoWindow'在'JQuery'类型的值上不存在。
如何禁用此类错误。我不能说,瑞安说,工作。
答案 0 :(得分:23)
如果你想在不做额外工作的情况下停止错误,你可以从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.
答案 1 :(得分:8)
有一个更好的解决方案。只需将jQuery logonDlg转换为如下所示:
(<any>logonDlg).kendoWindow(logOnParams);
代码会有所不同,但效果会相同。
两者都可以。
此致
答案 2 :(得分:4)
你就是这样做的。 TypeScript不会阻止你。您将在编译器输出中看到警告,但tsc
将生成您的JS文件。
答案 3 :(得分:4)
在这种特殊情况下,您可以只包含Telerik提供的Kendo UI TypeScript definitions。
(我知道当TS定义可能尚不存在时会回答这个问题,但是想要为将来遇到这个问题的人添加这个细节。)