Javascript 玩笑/酶w/反应-“;目标容器不是DOM元素;
我试图测试某个react组件中的按钮是否触发其父组件中的函数。当我在测试文件中导入组件时,我偶然发现了我的问题,所以测试还没有运行 我导入的组件是常规react组件,导出为:Javascript 玩笑/酶w/反应-“;目标容器不是DOM元素;,javascript,reactjs,jestjs,enzyme,Javascript,Reactjs,Jestjs,Enzyme,我试图测试某个react组件中的按钮是否触发其父组件中的函数。当我在测试文件中导入组件时,我偶然发现了我的问题,所以测试还没有运行 我导入的组件是常规react组件,导出为: export default connect(mapStateToProps, mapDispatchToProps)(Manager); 在我的测试文件中,我将其导入为: import Manager from '../index.js'; 当我运行测试时,我得到: Target container is not a
export default connect(mapStateToProps, mapDispatchToProps)(Manager);
在我的测试文件中,我将其导入为:
import Manager from '../index.js';
当我运行测试时,我得到:
Target container is not a DOM element.
我知道这是非常少的信息提供,但实际上没有任何其他相关的,就我所能看到的。我正在测试的组件做了很多事情,并且有一个渲染功能。经过大量的阅读后,我了解到一些人也有类似的问题,因为他们在ReactDOM.render的同一个文件中导出了一些内容。不幸的是,这不适用于我的问题
有什么想法吗?可能在index.js文件的某个地方有一个渲染调用。可能在index.js文件的某个地方有一个渲染调用。您可以在管理器中设置一个额外的导出,而无需连接,然后您就可以将其导入测试文件并测试其行为:
export default connect(mapStateToProps, mapDispatchToProps)(Manager);
export { Manager };
然后在测试文件中:
import { Manager } from 'your-path'; // now a named import without Connect
您可以在管理器
中设置附加的导出,而无需连接
,然后您就可以将其导入测试文件并测试其行为:
export default connect(mapStateToProps, mapDispatchToProps)(Manager);
export { Manager };
然后在测试文件中:
import { Manager } from 'your-path'; // now a named import without Connect
你确定你的index.js没有尝试调用ReactDOM.render
?这个答案对你的问题有帮助吗:?可能的重复你确定你的index.js没有尝试调用ReactDOM.render
?这个答案对你的问题有帮助吗:?可能的重复是注释,而不是答案,请不要回答这些问题,直到你有可能(即足够的声誉)评论帖子…这是一个评论,不是一个答案,请不要回答这些问题,直到你有可能(即足够的声誉)评论帖子…很高兴这有帮助;)很高兴这有帮助;)