Redux form 用通用函数法用酶检测redux型
所以我试图在使用redux表单和酵素的同时对我的组件编写一个测试。 到目前为止,对于我的简单组件,我已经创建了以下函数Redux form 用通用函数法用酶检测redux型,redux-form,enzyme,Redux Form,Enzyme,所以我试图在使用redux表单和酵素的同时对我的组件编写一个测试。 到目前为止,对于我的简单组件,我已经创建了以下函数 export const mountWithContext=(节点,存储)=>{ const nodeToMount=存储?{node}:节点; 返回安装(nodeToMount); }; 问题是,当我尝试使用react-redux时,它也失败了。 尝试做: 类表单扩展组件{ render(){ 返回 } } const TestForm=reduxForm({form:'T
export const mountWithContext=(节点,存储)=>{
const nodeToMount=存储?{node}:节点;
返回安装(nodeToMount);
};
问题是,当我尝试使用react-redux时,它也失败了。
尝试做:
类表单扩展组件{
render(){
返回
}
}
const TestForm=reduxForm({form:'TestForm'})(form);
const enzymeWrapper=mountWithContext(TestForm,store)
我得到了以下错误
'警告:失败的属性类型:提供给'Provider'的'function'类型的'children'属性无效,应为单个元素。
不变冲突:React.Children.仅应接收单个React元素子元素。
知道为什么会发生这种情况以及如何解决吗?这个问题已经问了6个月了。对于遇到类似错误消息的其他人:
{node}
的呈现实际上应该是
或类似的东西。这个错误基本上是说它需要一个元素,而用作{node}
而不是
的子元素是一个函数
export const mountWithContext = (Node, store) => {
const nodeToMount = store ? (
<Provider store={store} >
<Node />
</Provider>
) : <Node />;
return mount(nodeToMount);
};
export const mountWithContext=(节点,存储)=>{
const nodeToMount=存储(
) : ;
返回安装(nodeToMount);
};
因此,只需将node
的参数名更改为node
,并将JSX中的用法从{node}
更改为
或