小编IND*_*DER的帖子

'globalThis' 对 Jest 测试用例不够完善

我在 React WebApp 中使用 globalThis 属性,特别是 globalThis.scrollTo(0,0)。

我正在使用 Jest 和 Enzyme 进行单元测试。

由于测试用例失败,因为它无法识别 globalThis 并说 'globalThis' 未定义。

有没有办法像 jsdom 对 window 等所做的那样将 globalThis 引入测试?

例如

-- abc.tsx --

const abc: React.FC<CustomProps> = props => {
useEffect(() => {
globalThis?.scrollTo(0,0);
}
}
Run Code Online (Sandbox Code Playgroud)

-- abcTest.tsx --

wrapper = mount(<abc/>);
Run Code Online (Sandbox Code Playgroud)

mount产生错误,即“globalThis”未定义

javascript jsdom reactjs jestjs enzyme

11
推荐指数
1
解决办法
9854
查看次数

在 Chrome 中禁用缓存的情况下响应重新渲染

我有一个反应应用程序,我在其中使用“react-image-pan-zoom-rotate”来显示图像。

https://github.com/mgorabbani/react-image-pan-zoom-rotate

我基本上有一个外部服务的 url,它提供了我传递给以下两个库以呈现图像的图像。

最近我开始面临一个问题(仅在 Chrome 中),如果缓存被禁用,那么每当我在浏览器中单击图像或使用此组件提供的任何控件时,它都会重新渲染它,从而导致对外部图像服务器的另一次调用。每当我单击/与上述反应库生成的图像或视图进行交互时,就会发生这种情况。

现在我已经开始使用https://github.com/theanam/react-awesome-lightbox/blob/master/src/index.js并且它在禁用缓存的情况下没有任何此类问题。

知道为什么会发生这种情况吗?

javascript google-chrome lightbox node.js reactjs

5
推荐指数
0
解决办法
151
查看次数

标签 统计

javascript ×2

reactjs ×2

enzyme ×1

google-chrome ×1

jestjs ×1

jsdom ×1

lightbox ×1

node.js ×1