Creates a Query with the specified ending point.
Using startAt(), endAt(), and equalTo() allows you to choose arbitrary
starting and ending points for your queries.
The ending point is inclusive, so children with exactly the specified value will be included in the query. The optional key argument can be used to further limit the range of the query. If it is specified, then children that have exactly the specified value must also have a key name less than or equal to the specified key.
You can read more about endAt() in
Filtering data.
The value to end at. The argument
type depends on which orderBy*() function was used in this query.
Specify a value that matches the orderBy*() type. When used in
combination with orderByKey(), the value must be a string.
The child key to end at, among the children with the previously specified priority. This argument is only allowed if ordering by priority.
A new Query object.
Creates a Query that includes children that match the specified value.
Using startAt(), endAt(), and equalTo() allows us to choose arbitrary
starting and ending points for our queries.
The optional key argument can be used to further limit the range of the query. If it is specified, then children that have exactly the specified value must also have exactly the specified key as their key name. This can be used to filter result sets with many matches for the same value.
You can read more about equalTo() in
Filtering data.
The value to match for. The
argument type depends on which orderBy*() function was used in this
query. Specify a value that matches the orderBy*() type. When used in
combination with orderByKey(), the value must be a string.
The child key to start at, among the children with the previously specified priority. This argument is only allowed if ordering by priority.
A new Query object.
Returns whether or not the current and provided queries represent the same
location, have the same query parameters, and are from the same instance of
admin.app.App.
Two Reference objects are equivalent if they represent the same location
and are from the same instance of admin.app.App.
Two Query objects are equivalent if they represent the same location, have
the same query parameters, and are from the same instance of admin.app.App.
Equivalent queries share the same sort order, limits, and starting and
ending points.
The query to compare against.
Whether or not the current and provided queries are equivalent.
Generates a new Query limited to the first specific number of children.
The limitToFirst() method is used to set a maximum number of children to be
synced for a given callback. If we set a limit of 100, we will initially only
receive up to 100 child_added events. If we have fewer than 100 messages
stored in our Database, a child_added event will fire for each message.
However, if we have over 100 messages, we will only receive a child_added
event for the first 100 ordered messages. As items change, we will receive
child_removed events for each item that drops out of the active list so
that the total number stays at 100.
You can read more about limitToFirst() in
Filtering data.
The maximum number of nodes to include in this query.
A Query object.
Generates a new Query object limited to the last specific number of
children.
The limitToLast() method is used to set a maximum number of children to be
synced for a given callback. If we set a limit of 100, we will initially only
receive up to 100 child_added events. If we have fewer than 100 messages
stored in our Database, a child_added event will fire for each message.
However, if we have over 100 messages, we will only receive a child_added
event for the last 100 ordered messages. As items change, we will receive
child_removed events for each item that drops out of the active list so
that the total number stays at 100.
You can read more about limitToLast() in
Filtering data.
The maximum number of nodes to include in this query.
A Query object.
Detaches a callback previously attached with on().
Detach a callback previously attached with on(). Note that if on() was
called multiple times with the same eventType and callback, the callback
will be called multiple times for each event, and off() must be called
multiple times to remove the callback. Calling off() on a parent listener
will not automatically remove listeners registered on child nodes, off()
must also be called on any child listeners to remove the callback.
If a callback is not specified, all callbacks for the specified eventType
will be removed. Similarly, if no eventType or callback is specified, all
callbacks for the Reference will be removed.
One of the following strings: "value", "child_added", "child_changed", "child_removed", or "child_moved."
The callback function that was passed to on().
The context that was passed to on().
Listens for data changes at a particular location.
This is the primary way to read data from a Database. Your callback
will be triggered for the initial data and again whenever the data changes.
Use off( ) to stop receiving updates. See
Retrieve Data on the Web
for more details.
This event will trigger once with the initial data stored at this location,
and then trigger again each time the data changes. The DataSnapshot passed
to the callback will be for the location at which on() was called. It
won't trigger until the entire contents has been synchronized. If the
location has no data, it will be triggered with an empty DataSnapshot
(val() will return null).
This event will be triggered once for each initial child at this location,
and it will be triggered again every time a new child is added. The
DataSnapshot passed into the callback will reflect the data for the
relevant child. For ordering purposes, it is passed a second argument which
is a string containing the key of the previous sibling child by sort order
(or null if it is the first child).
This event will be triggered once every time a child is removed. The
DataSnapshot passed into the callback will be the old data for the child
that was removed. A child will get removed when either:
remove() on that child or one of its ancestorsset(null) on that child or one of its ancestorsThis event will be triggered when the data stored in a child (or any of its
descendants) changes. Note that a single child_changed event may represent
multiple changes to the child. The DataSnapshot passed to the callback will
contain the new child contents. For ordering purposes, the callback is also
passed a second argument which is a string containing the key of the previous
sibling child by sort order (or null if it is the first child).
This event will be triggered when a child's sort order changes such that its
position relative to its siblings changes. The DataSnapshot passed to the
callback will be for the data of the child that has moved. It is also passed
a second argument which is a string containing the key of the previous
sibling child by sort order (or null if it is the first child).
One of the following strings: "value", "child_added", "child_changed", "child_removed", or "child_moved."
A callback that fires when the specified event occurs. The callback is
passed a DataSnapshot. For ordering purposes, "child_added",
"child_changed", and "child_moved" will also be passed a string containing
the key of the previous child, by sort order (or null if it is the
first child).
An optional
callback that will be notified if your event subscription is ever canceled
because your client does not have permission to read this data (or it had
permission but has now lost it). This callback will be passed an Error
object indicating why the failure occurred.
If provided, this object will be used as this
when calling your callback(s).
The provided
callback function is returned unmodified. This is just for convenience if
you want to pass an inline function to on(), but store the callback
function for later passing to off().
Listens for exactly one event of the specified event type, and then stops listening.
This is equivalent to calling on(), and then calling off() inside the
callback function. See on() for details on the event types.
One of the following strings: "value", "child_added", "child_changed", "child_removed", or "child_moved."
A callback that fires when the specified event occurs. The callback is
passed a DataSnapshot. For ordering purposes, "child_added",
"child_changed", and "child_moved" will also be passed a string containing
the key of the previous child by sort order (or null if it is the
first child).
An optional
callback that will be notified if your client does not have permission to
read the data. This callback will be passed an Error object indicating
why the failure occurred.
If provided, this object will be used as this
when calling your callback(s).
Generates a new Query object ordered by the specified child key.
Queries can only order by one key at a time. Calling orderByChild()
multiple times on the same query is an error.
Firebase queries allow you to order your data by any child key on the fly. However, if you know in advance what your indexes will be, you can define them via the .indexOn rule in your Security Rules for better performance. See the .indexOn rule for more information.
You can read more about orderByChild() in
Sort data.
A new Query object.
Creates a Query with the specified starting point.
Using startAt(), endAt(), and equalTo() allows you to choose arbitrary
starting and ending points for your queries.
The starting point is inclusive, so children with exactly the specified value will be included in the query. The optional key argument can be used to further limit the range of the query. If it is specified, then children that have exactly the specified value must also have a key name greater than or equal to the specified key.
You can read more about startAt() in
Filtering data.
The value to start at. The argument
type depends on which orderBy*() function was used in this query.
Specify a value that matches the orderBy*() type. When used in
combination with orderByKey(), the value must be a string.
The child key to start at. This argument is allowed if ordering by child, value, or priority.
A new Query object.
A JSON-serializable representation of this object.
Gets the absolute URL for this location.
The toString() method returns a URL that is ready to be put into a browser,
curl command, or a admin.database().refFromURL() call. Since all of those
expect the URL to be url-encoded, toString() returns an encoded URL.
Append '.json' to the returned URL when typed into a browser to download JSON-formatted data. If the location is secured (that is, not publicly readable), you will get a permission-denied error.
The absolute URL for this location.
Generated using TypeDoc
A
Querysorts and filters the data at a Database location so only a subset of the child data is included. This can be used to order a collection of data by some attribute (for example, height of dinosaurs) as well as to restrict a large list of items (for example, chat messages) down to a number suitable for synchronizing to the client. Queries are created by chaining together one or more of the filter methods defined here.Just as with a
Reference, you can receive data from aQueryby using theon()method. You will only receive events andDataSnapshots for the subset of the data that matches your query.See Sorting and filtering data for more information.