Class: ExecutorLink
Defined in: packages/executors/apollo-link/src/index.ts:51
Extends
ApolloLink
Constructors
Constructor
new ExecutorLink(
executor):ExecutorLink
Defined in: packages/executors/apollo-link/src/index.ts:52
Parameters
executor
Returns
ExecutorLink
Overrides
apollo.ApolloLink.constructor
Properties
getMemoryInternals?
optionalgetMemoryInternals?: () =>unknown
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:382
Internal
Can be provided by a link that has an internal cache to report it’s memory details.
Returns
unknown
Deprecated
This is an internal API and should not be used directly. This can be removed or changed at any time.
Inherited from
apollo.ApolloLink.getMemoryInternals
left?
readonlyoptionalleft?:ApolloLink
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:368
Internal
Used to iterate through all links that are concatenations or split links.
Deprecated
This is an internal API and should not be used directly. This can be removed or changed at any time.
Inherited from
apollo.ApolloLink.left
right?
readonlyoptionalright?:ApolloLink
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:375
Internal
Used to iterate through all links that are concatenations or split links.
Deprecated
This is an internal API and should not be used directly. This can be removed or changed at any time.
Inherited from
apollo.ApolloLink.right
Methods
concat()
concat(…
links):ApolloLink
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:351
Combines the link with other links into a single composed link.
Parameters
links
…ApolloLink[]
Returns
ApolloLink
Example
import { ApolloLink, HttpLink } from "@apollo/client";
const previousLink = new ApolloLink((operation, forward) => {
// Handle the request
return forward(operation);
});
const link = previousLink.concat(
link1,
link2,
new HttpLink({ uri: "http://localhost:4000/graphql" })
);Inherited from
apollo.ApolloLink.concat
request()
request(
operation,forward):Observable<FormattedExecutionResult<Record<string,any>,Record<string,any>>>
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:361
Runs the request handler for the provided operation.
[!NOTE] This is called by the
ApolloLink.executefunction for you and should not be called directly. Prefer usingApolloLink.executeto make the request instead.
Parameters
operation
Operation
forward
ForwardFunction
Returns
Observable<FormattedExecutionResult<Record<string, any>, Record<string, any>>>
Inherited from
apollo.ApolloLink.request
split()
split(
test,left,right?):ApolloLink
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:329
Concatenates a link that conditionally routes a request to different links.
Parameters
test
(op) => boolean
A predicate function that receives the current operation
and returns a boolean indicating which link to execute. Returning true
executes the left link. Returning false executes the right link.
left
ApolloLink
The link that executes when the test function returns
true.
right?
ApolloLink
The link that executes when the test function returns
false. If the right link is not provided, the request is forwarded to
the next link in the chain.
Returns
ApolloLink
Example
import { ApolloLink, HttpLink } from "@apollo/client";
const previousLink = new ApolloLink((operation, forward) => {
// Handle the request
return forward(operation);
});
const link = previousLink.split(
(operation) => operation.getContext().version === 1,
new HttpLink({ uri: "http://localhost:4000/v1/graphql" }),
new HttpLink({ uri: "http://localhost:4000/v2/graphql" })
);Inherited from
apollo.ApolloLink.split
concat()
staticconcat(…links):ApolloLink
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:295
Combines multiple links into a single composed link.
Parameters
links
…ApolloLink[]
The links to concatenate into a single link. Each link will execute in serial order.
Returns
ApolloLink
Example
const link = ApolloLink.concat(firstLink, secondLink, thirdLink);Deprecated
Use ApolloLink.from instead. ApolloLink.concat will be
removed in a future major version.
Inherited from
apollo.ApolloLink.concat
empty()
staticempty():ApolloLink
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:199
Creates a link that completes immediately and does not emit a result.
Returns
ApolloLink
Example
const link = ApolloLink.empty();Inherited from
apollo.ApolloLink.empty
execute()
staticexecute(link,request,context):Observable<FormattedExecutionResult<Record<string,any>,Record<string,any>>>
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:279
Executes a GraphQL request against a link. The execute function begins
the request by calling the request handler of the link.
Parameters
link
ApolloLink
The ApolloLink instance to execute the request.
request
Request
The GraphQL request details, such as the query and
variables.
context
ExecuteContext
The execution context for the request, such as the
client making the request.
Returns
Observable<FormattedExecutionResult<Record<string, any>, Record<string, any>>>
Example
const observable = ApolloLink.execute(link, { query, variables }, { client });
observable.subscribe({
next(value) {
console.log("Received", value);
},
error(error) {
console.error("Oops got error", error);
},
complete() {
console.log("Request complete");
},
});Inherited from
apollo.ApolloLink.execute
from()
staticfrom(links):ApolloLink
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:221
Composes multiple links into a single composed link that executes each provided link in serial order.
Parameters
links
ApolloLink[]
An array of ApolloLink instances or request handlers that
are executed in serial order.
Returns
ApolloLink
Example
import { from, HttpLink, ApolloLink } from "@apollo/client";
import { RetryLink } from "@apollo/client/link/retry";
import MyAuthLink from "../auth";
const link = ApolloLink.from([
new RetryLink(),
new MyAuthLink(),
new HttpLink({ uri: "http://localhost:4000/graphql" }),
]);Inherited from
apollo.ApolloLink.from
split()
staticsplit(test,left,right?):ApolloLink
Defined in: node_modules/@apollo/client/link/core/ApolloLink.d.ts:248
Creates a link that conditionally routes a request to different links.
Parameters
test
(op) => boolean
A predicate function that receives the current operation
and returns a boolean indicating which link to execute. Returning true
executes the left link. Returning false executes the right link.
left
ApolloLink
The link that executes when the test function returns
true.
right?
ApolloLink
The link that executes when the test function returns
false. If the right link is not provided, the request is forwarded to
the next link in the chain.
Returns
ApolloLink
Example
import { ApolloLink, HttpLink } from "@apollo/client";
const link = ApolloLink.split(
(operation) => operation.getContext().version === 1,
new HttpLink({ uri: "http://localhost:4000/v1/graphql" }),
new HttpLink({ uri: "http://localhost:4000/v2/graphql" })
);Inherited from
apollo.ApolloLink.split