【问题标题】:Why i get `ReferenceError: jQuery is not defined` on unit testing为什么我在单元测试中得到`ReferenceError: jQuery is not defined`
【发布时间】:2020-04-02 12:43:16
【问题描述】:

我使用react-testing-library 来测试他们使用 jquery 的一些组件。
应用程序运行良好,但是当我去测试它们时,我发现 jQuery 没有定义。
这在node_modules/jqueryui/jquery-ui.js 内部调用,在哪里调用factory(jQuery)


**纱线测试给出:**。

ReferenceError: jQuery 未定义

  2 | import { video } from '../player';
  3 |
> 4 | import 'jqueryui';
    | ^
  5 | require('./jquery-ui-touch-punch');
  6 |
  7 | export default function() {

组件使用的 js 文件发生的错误:

https://i.stack.imgur.com/UDifX.png //我不知道为什么,它不显示图像。

jquery 需要在哪里导入,以免报错?


我在package.json 中使用的 jquery 模块是:

    "@types/jquery": "^3.3.33",
    "@types/jqueryui": "^1.12.10",
    "jquery": "2.2.0",
    "jqueryui": "^1.11.1",```

【问题讨论】:

    标签: javascript jquery reactjs unit-testing jquery-ui


    【解决方案1】:

    首先导入 jquery,因为它应该在范围内,或者如果它可用,请告诉编译器它是全局的,例如 `/* global $, jQuery, jquery */

    【讨论】:

    • 如果您查看图片链接,我会在第一行导入 jquery,如下所示:import * as $ from 'jquery';i.stack.imgur.com/UDifX.png
    • 我看不到图片,我看到帖子中显示的代码
    猜你喜欢
    • 1970-01-01
    • 2021-03-19
    • 1970-01-01
    • 1970-01-01
    • 2018-01-06
    • 2018-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多