• /
  • Log in

NerdGraphQuery

New Relic One SDK provides Query components based on ApolloClient's query components. These components are an abstraction layer making it easier to query NerdGraph without worrying about configuring Apollo Client and, for the most common use cases, without having to write GraphQL queries.

A generic NerdGraph Query component that allows you to query anything from NerdGraph.

Usage

import { NerdGraphQuery } from 'nr1'

Examples

Props

childrenfunction

Render prop function as a child.

function (
queryResult: QueryResult //

Results of the query.

) => React.ReactNode
fetchPolicyTypeenum
DEFAULT
NerdGraphQuery.FETCH_POLICY_TYPE.CACHE_AND_NETWORK

Allows you to specify how you want your query to interact with the cached data.

  • CACHE_AND_NETWORK: The query returns your initial data from the cache if available. However, regardless of whether or not the full data is in your cache, the query always makes a request using your network interface and returns the updated data. This option is not available when using the static query() method of the component.

  • CACHE_FIRST: The query makes a request using your network interface only if the data for your query is not already in the cache.

  • CACHE_ONLY: The query never makes a request using your network interface. Instead it returns the data available in the cache. If the data for your query does not exist in the cache, then an error is thrown.

  • NETWORK_ONLY: The query never returns your initial data from the cache. Instead it always makes a request using your network interface.

  • NO_CACHE: The query never returns your initial data from the cache. Instead it always makes a request using your network interface. Unlike the NETWORK_ONLY policy, it does not write any data to the cache after the query completes.

<One of
NerdGraphQuery.FETCH_POLICY_TYPE.CACHE_AND_NETWORK,
NerdGraphQuery.FETCH_POLICY_TYPE.CACHE_FIRST,
NerdGraphQuery.FETCH_POLICY_TYPE.CACHE_ONLY,
NerdGraphQuery.FETCH_POLICY_TYPE.NETWORK_ONLY,
NerdGraphQuery.FETCH_POLICY_TYPE.NO_CACHE,
>
pollIntervalnumber
DEFAULT
0

Interval in milliseconds to poll for new data. Set to zero to avoid any kind of regular polling.

queryrequiredstring|object

GraphQL query, either as a string or a GraphQL document parsed into an AST by the gql method of nr1.

skipboolean
DEFAULT
false

When set to true, the query will be skipped entirely from rendering.

variablesobject
DEFAULT
{}

Object containing all of the variables your query needs to execute.

Methods

NerdGraphQuery.query

Static method to use NerdGraphQuery as a Promise instead of as a React component.

function (
props: Object //

Object containing the query options. Any NerdGraphQuery 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.

}
Create issueEdit page
Copyright © 2021 New Relic Inc.