我正在尝试测试某个React组件中的按钮是否触发了其父组件中的功能。当我将组件导入测试文件时,我偶然发现了问题,所以测试甚至还没有运行。
我导入的组件是常规的react组件,并导出为:
export default connect(mapStateToProps, mapDispatchToProps)(Manager);
在我的测试文件中,我将其导入为:
import Manager from '../index.js';
运行测试时,我得到:
Target container is not a DOM element.
我知道要提供的信息很少,但据我所知,实际上没有其他相关信息。我正在测试的组件可以做很多事情,并且具有渲染功能。经过很多的阅读,我发现有些人遇到了类似的问题,因为他们将某些内容导出到执行ReactDOM.render
的同一文件中。不幸的是,这不适用于我的问题。
有什么想法吗?
答案 0 :(得分:0)
您可以在connect
中设置不带Manager
的其他导出,然后将其导入测试文件并测试其行为:
export default connect(mapStateToProps, mapDispatchToProps)(Manager);
export { Manager };
然后在您的测试文件中:
import { Manager } from 'your-path'; // now a named import without Connect
答案 1 :(得分:-1)
可能在index.js文件中的某个位置进行了渲染调用。