jquery - SPFx 不能使用 JQuery?

标签 jquery typescript sharepoint yo spfx

我正在使用 Yeoman 创建的 SPFx 开发一个全新的 SharePoint Web 部件,脚手架模板很好,添加 JQuery 和 JQueryUI 的 NPM 也没有出现任何问题,我看到 GULP SERVE 在后台运行,没有任何错误。

当我在 JQWebPart.ts 中添加以下行时,就会出现问题:

      import * as jQuery from 'jquery';

添加上面的行后,GULP SERVE 会输出一个很长的错误列表,下面是所有错误的最后几行:

[16:54:06] Error - typescript - node_modules\@types\jquery\index.d.ts(7502,33): error TS2314: Generic type 'Callbacks<T, Function>' requires 2 type argument(s).
[16:54:06] Error - typescript - node_modules\@types\jquery\index.d.ts(7503,36): error TS2314: Generic type 'Deferred<TR, TJ, any, TN>' requires 4 type argument(s).
[16:54:06] Error - typescript - node_modules\@types\jquery\index.d.ts(7504,41): error TS2314: Generic type 'Event<TTarget, EventTarget, TData>' requires 3 type argument(s).
[16:54:06] Error - typescript - node_modules\@types\jquery\index.d.ts(7505,36): error TS2314: Generic type 'Deferred<TR, TJ, any, TN>' requires 4 type argument(s).
[16:54:06] Error - typescript - node_modules\@types\jquery\index.d.ts(7506,37): error TS2314: Generic type 'AjaxSettings<TContext, any>' requires 2 type argument(s).
[16:54:06] Error - typescript - node_modules\@types\jquery\index.d.ts(7510,28): error TS2314: Generic type 'jqXHR<TResolve, any>' requires 2 type argument(s).
[16:54:06] Error - typescript - node_modules\@types\jquery\index.d.ts(7511,35): error TS2314: Generic type 'Promise<TR, TJ, any, TN>' requires 4 type argument(s).
[16:54:06] Error - typescript - node_modules\@types\jquery\index.d.ts(7517,32): error TS2314: Generic type 'PlainObject<T, any>' requires 2 type argument(s).
[16:54:06] Finished subtask 'tslint' after 3.95 s
[16:54:06] Error - 'typescript' sub task errored after 3.95 s
 "TypeScript error(s) occurred."

当我尝试使用 JQuery 时,我不知道我的 Web 部件发生了什么,有人有什么想法吗???

最佳答案

感谢用户 Rohit Waghela,已经有了一个解决方案来解决 SPFx 中与 JQuery 相关的问题:

https://thechriskent.com/tag/sharepoint-framework/

问题是 TypeScript 和 JQuery 之间不兼容,所以这里的底线如下:

1) 删除 JQuery:npm uninstall @types/jquery

2)安装兼容版本:npm install @types/jquery@2.0.48 --save-dev

关于jquery - SPFx 不能使用 JQuery?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45407856/

相关文章:

javascript - 我如何找到每个 <ul></ul> 中的最后一个 <li></li> (前端、html、css、jquery)

javascript - 多次成功请求后连接超时 jQuery.ajax

angular - 命名空间 node_module/@angular/core/core 没有导出成员 ɵɵFactoryDe​​claration | ɵɵInjectorDeclaration | ɵɵNgModuleDeclaration

typescript - 导出多个类 typescript

azure - Powershell 脚本 |在 Sharepoint 2019 中创建新的 Web 应用程序

java - 如何使用java中的rest api从共享点列表中获取文件内容

javascript - 如何设置基于 2 个单独的单选按钮打开提交按钮上的特定链接

javascript - contenteditable 更改事件

angular - Rxjs - 重新订阅取消订阅的 Observable

reactjs - 仅当文件类型更改时,react-file-viewer 才会重新渲染