在没有安装@progress/kendo-ui 的情况下以正确的方式导入@types/kendo-ui

Pat*_*ick 5 import types kendo-ui typescript kendo-ui-angular2

我想@types/kendo-ui在我的项目中导入。但即使是 WebStorm 也没有为我提供自动导入功能。

Kendo-UI 库已经通过加载,<script />所以我不需要通过import '@progress/kendo-ui';.

我安装了包https://www.npmjs.com/package/@types/kendo-ui通过npm install --save @types/kendo-ui

我试图通过这种可能性导入,但没有任何效果。

  1. /// <reference path="@types/kendo-ui" />

结果: TS2503:找不到命名空间“kendo”。

  1. import kendo = require("kendo");

结果: TS1202:针对 ECMAScript 模块时无法使用导入分配。

  1. declare module 'kendo' { export = kendo; }

结果: TS2664:扩充中的模块名称无效,找不到模块“kendo”。

  1. import { kendo } from '@types/kendo-ui';

结果: TS2307:找不到模块“@types/kendo-ui”。

  1. import * as kendo from '@types/kendo-ui';

结果: TS6137:无法导入类型声明文件。考虑导入 'kendo-ui' 而不是 '@types/kendo-ui'。

这就是我想使用它的方式。

<kendo.ui.Editor>kendo.jQuery(this.element.nativeElement).kendoEditor({
  tools: []
});
Run Code Online (Sandbox Code Playgroud)

这就是它现在的工作方式,但没有自动完成。

declare var kendo: any;
<any>kendo.jQuery(this.element.nativeElement).kendoEditor({
  tools: []
});
Run Code Online (Sandbox Code Playgroud)

我想尽可能地使用这些类型,所以不使用any.