Is this normal? Slow response and blank screen

This is my app that is fully built with expo:

In this gif, it appears:

  • blank screen for a short time( this can be solved by FlashList)
  • A TouchableOpacity need almost 2 seconds to respond to the Touch Event!
    • Back button inside the navigation bar and the tab bar button are the same

My questions:

  • Are these normal? Or did I do something wrong?
  • Will these happen on the Production Bundle?
  • It’s a problem of RN or Expo? Or React Navigation?
  • How could i resolve this?

Hey @likeso,

The points you have mentioned mostly relate to how your project fetches the data from the API (hence, the blank appearance when scrolled to bottom) and pass the data from screen to another. They are not Expo related issues.

When you are fetching data from an API in real time, depending on the network speed, you will have to use a placeholder to show the user when the data is being fetched.

The TouchableOpacity part: are you sending the complete data object when navigating to Product Overview screen? That is not a good practice. Generally, you can send the id of the product from Home to Product Overview screen and then using the id fetch the data (when using React Navigation).

Thank you for your reply! But I have to explain these:

  • The blank screen can be resolved by FlashList component, so it’s a performance problem. the only thing about the network is Image loading
  • I only send a detail id to the detail page. And as you can see, the Back button and the tab bar are the same problems…

I don’t know whether this is something related to my project size or not, But these issues prevented me from using EXPO and RN in a production project

And the Expo Go Client on Android crashed when an error occurs:

You can try running the app in production mode using npx expo start --no-dev --minify

This mode is useful for two things:

  • Testing your app’s performance, as Development slows your app down considerably
  • Catching bugs that only show up in production

For more info, please see the docs: Development and production modes - Expo Documentation

It’s hard to see what the error is in the GIF you shared. Please share the complete error stack. If the app is crashing in Expo Go, there will be an error stack trace logged in the terminal.

The error shows this:

And i will try your suggestion

1 Like

The error shared above seem to be coming from StyleSheet of an Input component (maybe you are using TextInput). My guess here could be that the value of left is a string, but it expects a number.

If you can share a minimal reproducible example, I can clone on my end and check it further.

I have to say that it’s hard to locate the error position. As a developer tool, Expo Go should never crash…
While I am debugging, I got another problem:

I am using hermes engine("jsEngine": "hermes" inside app.json), and the latest Expo SDK.