反应回调 return 不是可迭代的实例

React callback return not iterable instance

我在 React 中使用 ant-desing(v3.26.14) List 组件。通常,如果我尝试将普通数组传递给 'dataSource' 属性 那么一切都很好。但是当我尝试通过回调传递数组时出现错误。

<List dataSource={someArray} /> //is fine
<List dataSource={() => someArray} /> //getting error

错误:'TypeError:传播不可迭代实例的无效尝试。 为了可迭代,非数组对象必须具有 Symbol.iterator 方法。'

我想知道 javascript 的这种正常行为还是某些库问题,为什么会发生这种情况,这不是一回事吗?

我认为这是因为 List 组件需要数组,因此它可以使用点差,但你给它一个回调函数。它不期望回调函数而是迭代器(在本例中为数组)。