Firebase只接收具有一个特定值React Native的对象

时间:2017-06-03 12:40:16

标签: reactjs firebase listener native

假设我有一个像这样的firebase数据库:

Events 
    -Name "Some name"
    -message "simple message"
    -visible "1"

and
    -Name "Some name"
    -message "simple message"
    -visible "0"

现在我只想读取值为visible 0的所有对象,如果visible = 1,那么它可能不会显示在列表中。

我怎样才能做到这一点?

使用我当前的代码,我从firebase获取所有当前数据(事件) 但是如果内部有一个可见的0,我只想得到所有值。

在我的视图代码中,这是我阅读所有数据的地方:

    <View style={styles.headerContentStyle}>
        <Text style={styles.headerTextStyle}>
          {this.props.task.Event.visible}</Text>                 
        <Text>{this.props.task.Event.name}</Text>
        <Text>{this.props.task.Event.message}</Text>
    </View>

如果this.props.task.Event.visible = 0,那么我可以说些什么...... 别的......?

1 个答案:

答案 0 :(得分:0)

尝试更改存储数据的方式。您可以做的是将所有可见事件放在visible对象中,并将所有不可见事件放在invisible对象中。

因此,您的数据结构可能如下所示:

Events
    -visible
        -Name ""Some name
        -message "simple message"

    -invisible
        -Name ""Some name
        -message "simple message"

当然,您必须使用.push()函数,这样才能获得事件的唯一标识符。