TinyBase logoTinyBase

getResultCellIds

The getResultCellIds method returns the Ids of every ResultCell in a given ResultRow, in the ResultTable of the given query.

getResultCellIds(
  queryId: Id,
  rowId: Id,
): Ids
TypeDescription
queryIdId

The Id of a query.

rowIdId

The Id of the ResultRow in the ResultTable.

returnsIds

An array of the Ids of every ResultCell in the ResultRow in the result of the query.

This has the same behavior as a Store's getCellIds method. For example, if the query Id or ResultRow Id is invalid, the method returns an empty array. Similarly, it returns a copy of, rather than a reference to the list of Ids, so changes made to the list object are not made to the query results themselves.

Example

This example creates a Queries object, a single query definition, and then calls this method on it (as well as a non-existent ResultRow Id) to get the ResultCell Ids.

const store = createStore().setTable('pets', {
  fido: {species: 'dog', color: 'brown'},
  felix: {species: 'cat', color: 'black'},
  cujo: {species: 'dog', color: 'black'},
});

const queries = createQueries(store).setQueryDefinition(
  'dogColors',
  'pets',
  ({select, where}) => {
    select('color');
    where('species', 'dog');
  },
);

console.log(queries.getResultCellIds('dogColors', 'fido'));
// -> ['color']

console.log(queries.getResultCellIds('dogColors', 'felix'));
// -> []

Since

v2.0.0