反应回调 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
组件需要数组,因此它可以使用点差,但你给它一个回调函数。它不期望回调函数而是迭代器(在本例中为数组)。
我在 React 中使用 ant-desing(v3.26.14) List 组件。通常,如果我尝试将普通数组传递给 'dataSource' 属性 那么一切都很好。但是当我尝试通过回调传递数组时出现错误。
<List dataSource={someArray} /> //is fine
<List dataSource={() => someArray} /> //getting error
错误:'TypeError:传播不可迭代实例的无效尝试。 为了可迭代,非数组对象必须具有 Symbol.iterator 方法。'
我想知道 javascript 的这种正常行为还是某些库问题,为什么会发生这种情况,这不是一回事吗?
我认为这是因为 List
组件需要数组,因此它可以使用点差,但你给它一个回调函数。它不期望回调函数而是迭代器(在本例中为数组)。