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
|
||||
|
||||
```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');
|
||||
render(<App>, 'root');
|
||||
// Sample component
|
||||
// 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 someFiberNode = findNodeByComponentName(rootFiberNode, 'SomeComponentName'); // <- returns FiberNode for first usage of 'SomeComponentName'
|
||||
// Say, if SomeComponentName renders (<div>Some text</div>)
|
||||
someFiberNode.stateNode // <- returns reference to the div
|
||||
someFiberNode.stateNode.innerText // <- returns 'Some text'
|
||||
// Get component node
|
||||
const someFiberNode = findNodeByComponentName(
|
||||
rootFiberNode,
|
||||
"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
|
||||
|
||||
- [Basic Usage](https://codesandbox.io/)
|
||||
- [API Example](https://codesandbox.io/)
|
||||
- [UMD Build (Development)](https://codesandbox.io/)
|
||||
- [UMD Build (Production)](https://codesandbox.io/)
|
||||
|
||||
- [Basic Usage](https://codesandbox.io/s/react-example-x82zk?expanddevtools=1&fontsize=14)
|
||||
<!--
|
||||
## API
|
||||
|
||||
**Props**
|
||||
@@ -42,7 +53,7 @@ someFiberNode.stateNode.innerText // <- returns 'Some text'
|
||||
**Example**
|
||||
|
||||
```jsx
|
||||
```
|
||||
``` -->
|
||||
|
||||
## Installation
|
||||
|
||||
|
||||
Generated
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "react-fiber-traverse",
|
||||
"version": "0.0.5",
|
||||
"version": "0.0.6",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "react-fiber-traverse",
|
||||
"version": "0.0.5",
|
||||
"version": "0.0.6",
|
||||
"description": "Traverse and other utils on top of React fiber tree",
|
||||
"main": "dist/index.js",
|
||||
"module": "dist/react-fiber-traverse.esm.js",
|
||||
|
||||
Reference in New Issue
Block a user