Query entities by their name.
Usage
import { EntitiesByNameQuery } from 'nr1'
Examples
Declarative query
<EntitiesByNameQuery name="abc1-prod-metrics"> {({ loading, error, data, fetchMore }) => { if (error) { return 'Error!'; }
return ( <List items={data.entities} rowCount={data.count} rowHeight={20} onLoadMore={fetchMore} > {({ item }) => <ListItem key={item.guid}>{item.name}</ListItem>} </List> ); }}</EntitiesByNameQuery>
Fetch with sorting criteria
<EntitiesByNameQuery name="abc1-prod-metrics" sortType={[EntitiesByNameQuery.SORT_TYPE.ALERT_SEVERITY]}> {({ loading, error, data, fetchMore }) => { if (error) { return 'Error!'; }
return ( <List items={data.entities} rowCount={data.count} rowHeight={20} onLoadMore={fetchMore} > {({ item }) => <ListItem key={item.guid}>{item.name}</ListItem>} </List> ); }}</EntitiesByNameQuery>
Imperative query
EntitiesByNameQuery.query({ name: 'abc1-prod-metrics',}).then(({ data }) => console.log(data));
Fetch more results using imperative query
const name = 'abc1-prod-metrics';const firstPage = await EntitiesByNameQuery.query({ name });
console.log('First page data', firstPage.data);
const cursor = firstPage.data.nextCursor;const secondPage = await EntitiesByNameQuery.query({ cursor, name });
console.log('Second page data', secondPage.data);
// NOTE: To fetch multiple page results consecutively, use EntitiesByNameQuery// component's fetchMore approach.
Props
function | Render prop function as a child. function ( |
object | GraphQL fragment document parsed into an AST by
|
enum | Allows you to specify how you want your query to interact with the cached data.
|
string|(shape|shape|shape)[] | Filters used to narrow down the entities.This is an array of filters, and there are 3 possible filters:
|
boolean | |
boolean | If |
number | Pagination, number of entities to fetch for on each page. |
REQUIREDstring | Name or partial name of the entities to query. |
number | Interval in milliseconds to poll for new data. Set to zero to avoid any kind of regular polling. |
boolean | When set to |
DEPRECATED | Due November 1st, 2023The sortBy is deprecated, use sortType instead |
enum[] | Array of criteras used to sort the entity search results. <Array of |
Methods
EntitiesByNameQuery.query
function (props: Object Object containing the query options. Any EntitiesByNameQuery
prop is a valid option except children
and pollInterval
.
) => PromiseQueryResult
Type definitions
PromiseQueryResult
{error: ApolloClient.ApolloError, Runtime error with graphQLErrors
and networkError
properties.
data: Object, Object containing the result of your query.
fetchMore: function|null, If not null
, fetchMore
allows you to load more results for your query. New data is merged with previous data.
refetch: function, Refetch the query.
}
QueryResult
{loading: boolean, Indicates that the request is in flight.
error: ApolloClient.ApolloError, Runtime error with graphQLErrors
and networkError
properties.
data: Object, Object containing the result of your query.
fetchMore: function|null, If not null
, fetchMore
allows you to load more results for your query. New data is merged with previous data.
refetch: function, Refetch the query.
}