mirror of
https://github.com/bendtherules/react-fiber-traverse.git
synced 2026-08-18 22:01:49 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e01fc3ab0b | ||
|
|
ba2e842338 |
@@ -10,28 +10,39 @@
|
|||||||
## Basic Usage
|
## Basic Usage
|
||||||
|
|
||||||
```ts
|
```ts
|
||||||
import { render } from 'react-dom'
|
import React from "react";
|
||||||
|
import { render } from "react-dom";
|
||||||
|
|
||||||
import { findNodeByComponentName, Utils } from 'react-fiber-traverse'
|
import { findNodeByComponentName, Utils } from "react-fiber-traverse";
|
||||||
|
|
||||||
const rootElement = document.getElementById('root');
|
// Sample component
|
||||||
render(<App>, 'root');
|
// Say, if SomeComponentName looks like this -
|
||||||
|
function SomeComponentName() {
|
||||||
|
return <div>Some text</div>;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Render component
|
||||||
|
const rootElement = document.getElementById("root");
|
||||||
|
render(<SomeComponentName />, rootElement);
|
||||||
|
|
||||||
|
// Get root node
|
||||||
const rootFiberNode = Utils.getRootFiberNodeFromDOM(rootElement);
|
const rootFiberNode = Utils.getRootFiberNodeFromDOM(rootElement);
|
||||||
|
|
||||||
const someFiberNode = findNodeByComponentName(rootFiberNode, 'SomeComponentName'); // <- returns FiberNode for first usage of 'SomeComponentName'
|
// Get component node
|
||||||
// Say, if SomeComponentName renders (<div>Some text</div>)
|
const someFiberNode = findNodeByComponentName(
|
||||||
someFiberNode.stateNode // <- returns reference to the div
|
rootFiberNode,
|
||||||
someFiberNode.stateNode.innerText // <- returns 'Some text'
|
"SomeComponentName"
|
||||||
|
); // <- returns FiberNode for first usage of 'SomeComponentName'
|
||||||
|
|
||||||
|
console.log(someFiberNode.child.stateNode); // <- returns reference to the div
|
||||||
|
console.log(someFiberNode.child.stateNode.innerText); // <- returns 'Some text'
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Live Examples
|
## Live Examples
|
||||||
|
|
||||||
- [Basic Usage](https://codesandbox.io/)
|
- [Basic Usage](https://codesandbox.io/s/react-example-x82zk?expanddevtools=1&fontsize=14)
|
||||||
- [API Example](https://codesandbox.io/)
|
<!--
|
||||||
- [UMD Build (Development)](https://codesandbox.io/)
|
|
||||||
- [UMD Build (Production)](https://codesandbox.io/)
|
|
||||||
|
|
||||||
## API
|
## API
|
||||||
|
|
||||||
**Props**
|
**Props**
|
||||||
@@ -42,7 +53,7 @@ someFiberNode.stateNode.innerText // <- returns 'Some text'
|
|||||||
**Example**
|
**Example**
|
||||||
|
|
||||||
```jsx
|
```jsx
|
||||||
```
|
``` -->
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
|
|||||||
Generated
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "react-fiber-traverse",
|
"name": "react-fiber-traverse",
|
||||||
"version": "0.0.5",
|
"version": "0.0.6",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "react-fiber-traverse",
|
"name": "react-fiber-traverse",
|
||||||
"version": "0.0.5",
|
"version": "0.0.6",
|
||||||
"description": "Traverse and other utils on top of React fiber tree",
|
"description": "Traverse and other utils on top of React fiber tree",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"module": "dist/react-fiber-traverse.esm.js",
|
"module": "dist/react-fiber-traverse.esm.js",
|
||||||
|
|||||||
Reference in New Issue
Block a user