首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >平面列表渲染来自firestore的重复数组

平面列表渲染来自firestore的重复数组
EN

Stack Overflow用户
提问于 2018-09-04 06:40:20
回答 1查看 759关注 0票数 0

我正在将数据从firestore中提取到一个平面列表中。由于某些原因,我的来自firestore的数组渲染了两次。以前有没有人遇到过这个问题?

代码语言:javascript
复制
onCollectionUpdate = (querySnapshot) => {
var reviews = [];
let that = this;
querySnapshot.forEach((doc) => {
const { user, review, image} = doc.data();
reviews.push({
  key: doc.id,
  user: doc.data().user,
  review: doc.data().review, 
  image: doc.data().image, 
    });
  });
  that.setState({ 
  reviews,
  loading: false,
  });
}

下面是我的渲染函数。

代码语言:javascript
复制
_renderItem(reviews){
console.log(reviews);
<View style={{height: 60, marginRight: 0, marginLeft: 0, backgroundColor: '#D3D3D3', flexDirection: 'row'}}>
          <View style={{marginLeft: 10, justifyContent: 'center'}}>
              <Avatar
                small
                rounded
                source={{uri: reviews.item.image}}
                activeOpacity={0.7}
              />
          </View>
          <View style={{marginLeft: 5, justifyContent: 'center'}}>
              <Text>
              {reviews.item.user}
              </Text>
              <ReadMore
                  numberOfLines={1}
                  renderRevealedFooter={this._renderRevealedFooter}>
                  <Text>                       
                  {reviews.item.review}
                  </Text>
              </ReadMore>
          </View>
 </View>

  }

我的扁平表是

代码语言:javascript
复制
<FlatList 
  data={this.state.reviews}     
  keyExtractor={(item, index) => index}
  renderItem={this._renderItem.bind(this)}/> 
EN

回答 1

Stack Overflow用户

发布于 2018-09-04 08:02:34

我想通了。我需要创建一个用于评论的变量,并首先将其链接到this.state。当我创建一个空的变量时,它被复制了。简单地说

代码语言:javascript
复制
var reviews = this.state.reviews 

解决了这个问题

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52156823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档