Skip to content

Latest commit

 

History

History
150 lines (98 loc) · 5.3 KB

_findnode_.md

File metadata and controls

150 lines (98 loc) · 5.3 KB

react-fiber-traverse

Globals / "findNode" /

External module: "findNode"

Index

Functions

Functions

findAllNodesByComponentName

findAllNodesByComponentName(node: FiberNode | null, expectedName: string, traverseConfig?: TTraverseConfig): Array<FiberNode>

Defined in findNode.ts:58

Parameters:

Name Type
node FiberNode | null
expectedName string
traverseConfig? TTraverseConfig

Returns: Array<FiberNode>


findNodeByComponent

findNodeByComponent(node: FiberNode | null, expectedClassOrFunction: React.ComponentType, traverseConfig?: TTraverseConfig): FiberNode | null

Defined in findNode.ts:84

Find node by component (i.e. class or function by reference), till first match.

Matches against class and function by reference. Returns null if no match is found.

example

// returns FiberNode for first usage of AccordionMenu
findNodeByComponent(startNode, AccordionMenu);

note Medium chance of collision, medium data access needed. This is safer than findNodeByComponentName, as different components with the same name won't collide. But, two instances of the same component will still collide. Needs access to component class or function.

Parameters:

Name Type
node FiberNode | null
expectedClassOrFunction React.ComponentType
traverseConfig? TTraverseConfig

Returns: FiberNode | null


findNodeByComponentName

findNodeByComponentName(node: FiberNode | null, expectedName: string, traverseConfig?: TTraverseConfig): FiberNode | null

Defined in findNode.ts:22

Find node by component name, till first match.

Matches against class and function name, doesn't match html-like nodes. Returns null if no match is found.

example

// returns FiberNode for first usage of 'AccordionMenu'
findNodeByComponentName(startNode, "AccordionMenu");

note Highest chance of collision, least data access needed. Different components with same name will collide. Needs access to component name.

Parameters:

Name Type
node FiberNode | null
expectedName string
traverseConfig? TTraverseConfig

Returns: FiberNode | null


findNodeByComponentRef

findNodeByComponentRef(node: FiberNode | null, expectedClassInstance: Component, traverseConfig?: TTraverseConfig): FiberNode | null

Defined in findNode.ts:122

Find node by component instance ref, till first match.

Matches against class instances by reference. Returns null if no match is found.

example

// menuRef=createRef(); <AccordionMenu ref={menuRef}>
findNodeByComponentRef(startNode, menuRef.current);

note Least chance of collision, maximum data access needed. Needs access to component instance (through React ref usually).

Parameters:

Name Type
node FiberNode | null
expectedClassInstance Component
traverseConfig? TTraverseConfig

Returns: FiberNode | null


findNodesByComponentName

findNodesByComponentName(node: FiberNode | null, expectedName: string, traverseConfig?: TTraverseConfig): IterableIterator<FiberNode>

Defined in findNode.ts:41

Parameters:

Name Type
node FiberNode | null
expectedName string
traverseConfig? TTraverseConfig

Returns: IterableIterator<FiberNode>