我正在使用酶测试react组件,但出现以下错误:
不变违规:危险地渲染标记(...):无法在工作线程中呈现标记。在单元测试或使用 ReactDOMServer.renderToString 进行服务器渲染时需要 React 之前,确保
window
和document
全局可用
在需要“酶”之前,我为 jsdom 添加了以下设置(正如我在几个地方读到的):
const baseMarkup = '<!DOCTYPE html><html><head><title></title></head><body></body></html>';
const window = require('jsdom').jsdom(baseMarkup).defaultView;
global.window = window;
global.document = window.document;
global.navigator = window.navigator;
const React = require('react');
const {mount} = require('enzyme');
const sinon = require('sinon');
const SortableInput = require('../../../src/components/sortableInput/sortableInput').default;
我在这里做错了什么?
编辑
我认为这与服务器端渲染无关。该消息是关于单元测试和服务器端渲染的一般信息。