Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs find()的酶测试错误_Reactjs_Mocha.js_Chai_Material Ui_Enzyme - Fatal编程技术网

Reactjs find()的酶测试错误

Reactjs find()的酶测试错误,reactjs,mocha.js,chai,material-ui,enzyme,Reactjs,Mocha.js,Chai,Material Ui,Enzyme,我尝试在我的组件中找到并测试MUI组件,并收到错误 在每个“hook for”应该呈现之前: 不变冲突:对象作为React子对象无效(找到:具有键{props}的对象)。如果要呈现子对象集合,请改用数组,或使用React附加组件中的createFragment(object)包装对象 import FloatingActionButton from 'material-ui/FloatingActionButton' import IconButton from '../../src/Icon

我尝试在我的组件中找到并测试MUI组件,并收到错误 在每个“hook for”应该呈现之前: 不变冲突:对象作为React子对象无效(找到:具有键{props}的对象)。如果要呈现子对象集合,请改用数组,或使用React附加组件中的createFragment(object)包装对象

import FloatingActionButton from 'material-ui/FloatingActionButton'

import IconButton from '../../src/IconButton'

describe.only('<IconButton/>', () => {
    let iconButton, props
    beforeEach(() => {
        iconButton = shallow(<IconButton />).find(FloatingActionButton)
        // console.log(iconButton.node.type)
        props = iconButton.props()
    })
import FloatingActionButton from'material ui/FloatingActionButton'
从“../../src/IconButton”导入IconButton
仅描述(“”,()=>{
让我扣上扣子,道具
在每个之前(()=>{
iconButton=shallow().find(FloatingActionButton)
//log(iconButton.node.type)
props=iconButton.props()
})
组件本身

import React from 'react'
import PropTypes from 'prop-types'
import FloatingActionButton from 'material-ui/FloatingActionButton'

import getStyle from './styles'
import '../styles/buttons.scss'

const IconButton = ({color = 'normal', ...props}) =>
    <FloatingActionButton
        disableTouchRipple
        mini
        zDepth={1}
        {...props}
        {...getStyle(color, props.disabled, props.children)}
    />

IconButton.propTypes = {
    color: PropTypes.string,
    icon: PropTypes.node,
    children: PropTypes.node,
    disabled: PropTypes.bool,
    // here we must use object proptype as style is an object and there is no validation for style type
    // eslint-disable-next-line react/forbid-prop-types
    style: PropTypes.object,
}

export default IconButton
从“React”导入React
从“道具类型”导入道具类型
从“材质ui/FloatingActionButton”导入FloatingActionButton
从“./styles”导入getStyle
导入“../styles/buttons.scss”
常量图标按钮=({color='normal',…props})=>
IconButton.propTypes={
颜色:PropTypes.string,
图标:PropTypes.node,
子项:PropTypes.node,
禁用:PropTypes.bool,
//在这里,我们必须使用对象proptype,因为style是一个对象,并且没有对style类型的验证
//eslint禁用下一行反应/禁止道具类型
样式:PropTypes.object,
}
导出默认图标按钮

该错误与酶无关,但与React呈现有关。显示您的FloatingAction按钮错误原因似乎在那里。您是否正确导出组件?@CharlieBrown FloatingAction按钮是材质ui组件,您认为呈现此组件有问题吗?@MartinDawson在尝试console.log时也是如此(iconButton.node)-我将此组件视为节点
{$$typeof':Symbol(react.element),类型:{[Function:FloatingActionButton]defaultProps:{disabled:false,mini:false,secondary:false,zDepth:2},contextTypes:{muiTheme:[函数:绑定checkType]},