React Native List View句柄Null

时间:2015-08-10 15:56:09

标签: react-native

我使用的API无论如何都会返回10个对象,即使只有2个结果。所以返回值看起来像这样:

[[object], [object], [null], [null], [null], [null], [null], [null], [null], [null]]

这会导致列表视图出现问题,因为它需要值。

目前我正在处理它:

renderRow(rowData) {
  if (rowData === null) { return <View></View>; };

  return (
    <SearchListItem
      title={ rowData.strProductName }
      price={ rowData.dblProductPrice }
      salePrice={ rowData.dblProductSalePrice }
      imageUrl={ rowData.strLargeImage }
      handleShare={ this._handleShare.bind(this) }
    />
  );
}

在我看来,只返回一个空视图是一种hacky。

有没有更好的方法来解决这个问题?

1 个答案:

答案 0 :(得分:1)

您可以预处理模型数据并跳过需要在视图之间切换:

var processed = _.map(rowData, (r) => {
    if (r === null)
        return { // contents of 'empty' model };
    else
        return r;
});

但是你想要在视图中显示空行吗?如果没有,那么你应该使用_.filter。如果是这样,那么现在你采用IMO的方式是适当的方式。