react v16下render与antd table的问题

render() {
    return(
     [    
         xxx... ,
         <Table/>
     ]
    )
}

Warning: Each child in an array or iterator should have a unique "key" prop. See https://fb.me/react-warning-keys for more information.

如果我用v16的语法去写render,会报上述错误,如果我在最外一层套一个<div></div>,就是以前v15的写法,则不会报错,antd table我已经添加了rowKeys,请问各位大佬有遇到这样的情况吗?

阅读 3.9k
5 个回答

你这样是返回的一个数组,
你的xxx是什么东西

前面都说了加key的问题,而且要注意Tablekey,不处理Tablekey依然报错

render() {
    return(
     [    
         <div key="0" /> ,
         <div key="1" /> ,
         ... ,
         <Table key="n" rowKey={r => r.id}/>
     ]
    )
}

Each child in an array or iterator should have a unique "key" prop.
你只是添加了rowKeys,rowKeys是表格行渲染需要的,但是你的XXX的key呢,Table的key呢,这个也是需要的

这是 waring 不是 error。

你 render 函数返回的是一个数组,你需要为数组里的每一个元素带上唯一的key。

render() {
    return(
     [    
         <div key="0" /> ,
         <div key="1" /> ,
         ... ,
         <Table key="n"/>
     ]
    )
}

这样子写就不会有问题了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题