在React Native中从Firestore文档读取和显示数据

路易斯·阿奎莱斯

背景

我正在尝试构建一个显示许多商店的应用程序,在主屏幕上它是一个功能组件(请注意这一点,因为我需要使用钩子),我有一个滚动视图来显示不同的商店。

我需要的

当用户按下其中一个商店时,应将其重定向到包含该特定商店信息的屏幕。我已经建立了“商店详细信息”屏幕,但是使用静态信息,我想用存储在firestore集合中的数据替换所有这些信息。

如何在react native中从Firestore集合中检索数据,然后将每个文档中的数据分配给单独的Touchable Opacity(我知道通过react导航传递参数,我只是不知道在使用时传递哪个参数) Firestore),然后在商店详细信息屏幕中显示该数据?

上下文示例代码

App.js

    <NavigationContainer> 
  <Stack.Navigator initialRouteName={user ? 'Home' : 'Login'}
    screenOptions={{cardStyle: { backgroundColor: '#FFFFFF' }}}> 
    <Stack.Screen name="Home"options={{headerShown: false}}> 
      {props => <HomeScreen {...props} extraData={user} />} 
    </Stack.Screen> 
    <Stack.Screen name="Login" component={LoginScreen} options={{headerShown: false}}/> 
    <Stack.Screen name="Registration" component={RegistrationScreen}  options={{headerShown: false}}/> 
    <Stack.Screen name="storeDetail" options={{title: ''}}> 
        {props => <storeDetail {...props} extraData={} />} 
    </Stack.Screen> 
  </Stack.Navigator> 
</NavigationContainer>

在此文件中,您将看到我已经调用了一些数据(“登录”和“注册”将userData传递到主屏幕),但是,要实现该方法,我取决于我使用的身份验证方法的响应。我想虽然我可能需要传递一些额外数据,但我知道该怎么做,我只是不知道如何填补空白。

在此先多谢!

合作

首先,在您的应用中安装Firebase SDK,以便您可以查询后端。

我不知道您的示例App.js是否代表您应用程序的当前进度状态,但我将假定:

  • 您已经建立了storeDetail屏幕
  • 您会在导航到屏幕之前(例如在主屏幕中)知道商店的ID
  • 您导航到storeDetail时将storeId作为导航参数传递

因此,在storeSetails屏幕中,您可以在收到时查询Firestore storeId,并在成功时将结果保存到状态变量中:


const StoreDetailsScreen = ({ route }) => { // route is passed as a prop by React Navigation
  const { storeId } = route.params
  const [store, setStore] = useState()
  const [loading, setLoading] = useState(true) // show a loading spinner instead of store data until it's available

  useEffect(() => {

    const fetchQuery = async () => {
      const storeData = await firestore()
        .collection('stores')
        .doc(storeId)
        .get() // this queries the database

        if (storeData) {
          setStore(storeData) // save the data to store state
          setLoading(false) // set loading to false 
        } else {
          // something went wrong, show an error message or something
        }
    }

    fetchQuery()

  }, [storeId])

  if (loading) {
    return (
      <ActivityIndicator/>
    )
  }
  
  return (
    // ... store details
  )

}

然后,您可以使用数据在store屏幕上渲染内容

<Text>{store.name}</Text>
<Text>{store.email}</Text>
// ...

有关如何在RN中使用Firestore的更多信息:https : //rnfirebase.io/firestore/usage

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在React Native中显示来自Firebase Firestore的数据

来自分类Dev

如何在React-native中从Firestore中读取子集合的文档字段

来自分类Dev

无法在Firestore中获取文档(React Native)

来自分类Dev

如何使用 Electron 和 React 显示从文件中读取的数据?

来自分类Dev

将图像从Firebase Storage链接到Firestore文档并在React Native中显示它们

来自分类Dev

在React中如何从子集合中的文档中获取和显示数据

来自分类Dev

在Text标签内的React Native中显示Firebase Firestore中的用户数据

来自分类Dev

如何在React Native中显示来自两个Firestore集合的数据

来自分类Dev

在React Native中循环Json和显示

来自分类Dev

在React Native中隐藏和显示组件

来自分类Dev

使用React检索文档数据Firestore

来自分类Dev

无法在React Native中从Firebase Firestore获取数据

来自分类Dev

如何在React Native中在后台读取数据

来自分类Dev

在React Native View中显示对象数组中的数据

来自分类Dev

在React Native中存储静态数据和公共数据

来自分类Dev

在React Native中存储静态数据和公共数据

来自分类Dev

React-Native:在ListView中显示JSON数据

来自分类Dev

如何在React Native中显示获取的数据

来自分类Dev

在React Native Table组件中显示从API提取的数据

来自分类Dev

如何在React Native中水平显示来自API的数据

来自分类Dev

在React Native组件中显示数据 火力基地

来自分类Dev

React Native:如何检索Firebase Firestore文档作为数组?

来自分类Dev

react-native android 应用程序从谷歌电子表格中获取和显示数据

来自分类Dev

onclick显示和隐藏react.js中的数据

来自分类Dev

使用axios和React读取JSON数据

来自分类Dev

React Native 显示简单的 Json 数据

来自分类Dev

React Native,将JSON数据显示为标题和列表(类别和子类别

来自分类Dev

如何正确设置setState和useEffect以从React中的对象读取和显示值(挂钩)?

来自分类Dev

如何在React中显示Firestore数据库中的项目

Related 相关文章

  1. 1

    如何在React Native中显示来自Firebase Firestore的数据

  2. 2

    如何在React-native中从Firestore中读取子集合的文档字段

  3. 3

    无法在Firestore中获取文档(React Native)

  4. 4

    如何使用 Electron 和 React 显示从文件中读取的数据?

  5. 5

    将图像从Firebase Storage链接到Firestore文档并在React Native中显示它们

  6. 6

    在React中如何从子集合中的文档中获取和显示数据

  7. 7

    在Text标签内的React Native中显示Firebase Firestore中的用户数据

  8. 8

    如何在React Native中显示来自两个Firestore集合的数据

  9. 9

    在React Native中循环Json和显示

  10. 10

    在React Native中隐藏和显示组件

  11. 11

    使用React检索文档数据Firestore

  12. 12

    无法在React Native中从Firebase Firestore获取数据

  13. 13

    如何在React Native中在后台读取数据

  14. 14

    在React Native View中显示对象数组中的数据

  15. 15

    在React Native中存储静态数据和公共数据

  16. 16

    在React Native中存储静态数据和公共数据

  17. 17

    React-Native:在ListView中显示JSON数据

  18. 18

    如何在React Native中显示获取的数据

  19. 19

    在React Native Table组件中显示从API提取的数据

  20. 20

    如何在React Native中水平显示来自API的数据

  21. 21

    在React Native组件中显示数据 火力基地

  22. 22

    React Native:如何检索Firebase Firestore文档作为数组?

  23. 23

    react-native android 应用程序从谷歌电子表格中获取和显示数据

  24. 24

    onclick显示和隐藏react.js中的数据

  25. 25

    使用axios和React读取JSON数据

  26. 26

    React Native 显示简单的 Json 数据

  27. 27

    React Native,将JSON数据显示为标题和列表(类别和子类别

  28. 28

    如何正确设置setState和useEffect以从React中的对象读取和显示值(挂钩)?

  29. 29

    如何在React中显示Firestore数据库中的项目

热门标签

归档