相关疑难解决方法(0)

使用jQuery反应组件而不需要 - jest单元测试

我有一个非常简单的React mixin,它使用jQuery来触发事件

MyMixin = {
  trackStructEvent: function () {
    args = Array.prototype.slice.call(arguments);
    $('body').trigger('myEvent', args);
  }
module.exports = MyMixin
Run Code Online (Sandbox Code Playgroud)

使用browserify将其作为新的组件集的一部分导入主站点.由于拥有这些组件的主站点将始终包含jQuery,我不希望jQuery与browserify一起使用,因为它将被复制.

这在行为方面不是问题 - 但是在运行jest以使用此mixin抛出错误来对组件进行单元测试时会导致问题.

ReferenceError: $ is not defined
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过浏览器包含jQuery来解决这个问题,但这会将2个副本加载到我的网站中.

有没有什么方法可以告诉我的反应组件jQuery已经存在于窗口而不用担心它?

jquery reactjs jestjs reactjs-testutils

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

jestjs ×1

jquery ×1

reactjs ×1

reactjs-testutils ×1