我不明白以下两行是如何不同的
shallowRenderedComponent = shallow(<SomeComponent />)
shallowRenderedComponentInstance = shallowRenderedComponent.instance()
酶文档非常模糊,我在互联网上找不到任何比较。
提前致谢
答案 0 :(得分:2)
shallow
返回一个包装器对象,其文档中包含enzyme定义的所有方法(例如find
,setProps
等)
instance
直接访问React组件的实例化对象。也就是说,实例上可用的方法是您在应用程序代码中为该类编写的方法。
例如,如果您的React组件如下所示,您的shallowRenderedComponentInstance
将授予您访问handleClick
class Example extends React.Component {
handleClick = () {
console.log("I was clicked");
};
render() {
return (
<pre>Hello, World!</pre>
);
}
}