为了账号安全,请及时绑定邮箱和手机立即绑定

React使用map方法的时候遇到个奇怪的问题,请求高手知道

React使用map方法的时候遇到个奇怪的问题,请求高手知道

慕神8447489 2019-03-05 12:15:47
class BlackBorderContainer extends React.Component {        render(){            console.log(this.props.children[0].props); //object            this.props.children.map((val,i)=>{                console.log(val);                return <div key={i} className="black-board">{val.type}</div>            })        }    }    ReactDOM.render(        <BlackBorderContainer>            <div className='name'>My Name:Lucy</div>            <p className='age'> My Age:<span>12</span></p>        </BlackBorderContainer>,        document.getElementById('example')    )我2个console打印出来的内容 可以看出有三个对象,那我这里{val.type}为什么还是错误的?难道说是因为<BlackBorderContainer>组件内部的不对称,一个是div一个是p的缘故?{className: "name", children: "My Name:Lucy"}{$$typeof: Symbol(react.element), type: "div", key: null, ref: null, props: {…}, …}{$$typeof: Symbol(react.element), type: "p", key: null, ref: null, props: {…}, …}从中可以看出我最后return的时候 val是正确输出的,但是程序会报错Uncaught Error: BlackBorderContainer.render(): A valid React element (or null) must be returned. You may have returned undefined, an array or some other invalid object.
查看完整描述

2 回答

?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

看字面意思也是你的render函数没有返回值呀。
你的return是map的。

查看完整回答
反对 回复 2019-03-20
  • 2 回答
  • 0 关注
  • 1491 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信