React Native
...
Parse SDK (REST)
Data objects

Basic Queries

11min

Query in React Native using Parse

Introduction

In this guide, you will perform basic queries in Parse and implement a React Native component using these queries. You will learn how to set up and query realistic data using Back4App and React Native.



Prerequisites

To complete this tutorial, you will need:

  • A React Native App created and connected to Back4App.
  • If you want to test/use the screen layout provided by this guide, you should set up thereact-native-paperlibrary.

Goal

Query data stored on Back4App from a React Native App.

1 - Understanding the Parse.Query class

Any Parse query operation uses the Parse.Query object type, which will help you retrieve specific data from your database throughout your app. It is crucial to know that a Parse.Query will only resolve after calling a retrieve method (like Parse.Query.find or Parse.Query.get), so a query can be set up and several modifiers can be chained before actually being called.

To create a new Parse.Query, you need to pass as a parameter the desired Parse.Object subclass, which is the one that will contain your query results. An example query can be seen below, in which a fictional Profile subclass is being queried.

JS


You can read more about the Parse.Query class here at the official documentation.

2 - Save some data on Back4App

Let’s create a Profile class, which will be the target of our queries in this guide. On Parse JS Console is possible to run JavaScript code directly, querying and updating your application database contents using the JS SDK commands. Run the code below from your JS Console and insert the data on Back4App.

Here is how the JS Console looks like in your dashboard:

Document image


Go ahead and create the user Profile class with the following example content:

JS


3 - Query the data

Now that you have a populated class, we can now perform some basic queries in it. Let’s begin by filtering Profile results by name, which is a string type field, searching for values that contain the name Adam using the Parse.Query.contains method:

JS


Let’s now query by the number type field friendCount by using another common query method, Parse.Query.greaterThan. In this case, we want user Profiles in which the friend count is greater than 20.

JS


Other recurring query methods are Parse.Query.ascending and Parse.Query.descending, responsible for ordering your queries. This ordering can be done in most data types, so let’s order a query by the date field birthDay by the youngest.

JS


As stated here before, you can and should chain query methods to achieve more refined results. Let’s then combine the previous examples in a single query request:

JS


4 - Query from a React Native component

Let’s now use our example queries inside a component in React Native, with a simple interface having a list showing results and also 4 buttons for calling the queries. This is how the component code is laid out, note the doQuery functions, containing the example code form before.

JavaScript
TypeScript


This is how the component should look like after rendering and querying by all the query functions:

Document image


Conclusion

At the end of this guide, you learned how basic data queries work on Parse and how to perform them on Back4App from a React Native App. In the next guide, you will explore the Parse.Query full potential using all the methods available on this class.