Ath*_*ira 3 jquery types jquery-ui typescript angular
通过将 Angular 2 和 Typescript 与 JQuery 和 JQueryUI 一起使用,我收到以下错误:
Property 'draggable' does not exist on type 'JQuery<HTMLElement>'
Run Code Online (Sandbox Code Playgroud)
我知道这.draggable()是一个依赖于 JQueryUI 的函数,我已经使用以下命令在我的 node_modules 中安装了 JQuery 和 JQueryUI:
npm install --save jquery
npm install --save @types/jquery
npm install --save @types/jqueryui
Run Code Online (Sandbox Code Playgroud)
我的 Webstorm IDE 可以通过在函数上按 Ctrl+单击来突出显示并引导我到正确的位置,但控制台会显示我上面提到的错误。
我正在导入模块,import * as $ from 'jquery';我的代码是$('#element').draggable({containment: '#containment-wrapper});
谁能帮我找出错误在哪里?
感谢@LLai 为我提供了解决问题的好方向。基本上,我必须在我的项目中安装 jqueryui 核心:
npm install --save-dev jqueryui
Run Code Online (Sandbox Code Playgroud)
然后,我不得不进口jqueryui后jquery是这样的:
import * as $ from 'jquery';
import 'jqueryui'
Run Code Online (Sandbox Code Playgroud)
好吧,这给了我很多错误,但看起来它是某些版本的问题@types/jquery,所以我不得不在 Github 上关注这个问题,建议安装特定版本的 @types/jquery npm install @types/jquery@2.0.47 --save-dev。
完成这些步骤后,一切正常!希望它会帮助别人。
导入jqueryui后还必须导入jquery
import * as $ from 'jquery';
import 'jqueryui';
Run Code Online (Sandbox Code Playgroud)
draggable() 函数现在应该可用。
| 归档时间: |
|
| 查看次数: |
7904 次 |
| 最近记录: |