javascript - 将 jQuery 加载到 React App 的 Mocha 测试中

标签 javascript jquery reactjs mocha.js sinon

我创建了一个与本教程类似的 Mocha 测试设置:https://github.com/jesstelford/react-testing-mocha-jsdom

我想知道如何将 jQuery 加载到这个结构中。我已将其包含为 require('jquery') 测试 JS 文件,但是当我调用 $.ajax 时,它会给出错误 TypeError: Attempted to将未定义的属性 ajax 包装为函数。我怀疑这是因为 Node 没有在浏览器中运行我的 JavaScript。但是,我尝试使用 window environment ,但仍然没有运气。

我知道传统的方法是在 HTML 标签中包含 jQuery,但我不知道如何在这里执行此操作,因为我没有 HTML 文件。

最佳答案

这是一种模式,适用于我在 mocha 中的某些 jquery 方法,我不确定它是否适用于 ajax,但请尝试一下并让我知道。

import jsdom from 'jsdom'
import _$ from 'jquery'

global.document = jsdom.jsdom('<!doctype html><html><body></body></html>')
global.window = global.document.defaultView
const $ = _$(global.window)

关于javascript - 将 jQuery 加载到 React App 的 Mocha 测试中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37869307/

相关文章:

javascript - 如何动态获取函数参数名称/值?

javascript - 创建导航背景 CSS

javascript - 每个页面的 jQuery 选择器都不同

reactjs - 如何为元素的所有子元素添加样式

javascript - 在codeigniter中通过ajax删除后隐藏数据表的行(tr)

javascript - iframe 使用 javascript 返回 - 避免主页返回

javascript - 选择月份后隐藏日期选择器

javascript - Angular 图饼图数据点击事件

javascript - Next.js,重定向到getServerSideProps里面的404页面

reactjs - TypeScript 中的 'value' 上不存在属性 'EventTarget'