mirror of
https://github.com/bendtherules/react-fiber-traverse.git
synced 2026-08-18 13:52:36 +00:00
Refactor - Move traverse to separate file and export from index
This commit is contained in:
+2
-56
@@ -1,57 +1,3 @@
|
||||
// import { isNodeSimple } from './utils';
|
||||
import {FiberNode} from './mocked-types';
|
||||
import traverse from "./traverse";
|
||||
|
||||
function traverse(node: FiberNode, fn: (node: FiberNode) => any) {
|
||||
// if (node.child) {
|
||||
// if (!isNodeSimple(node) && typeof node.child.type === "string") {
|
||||
// node.child.stateNode.addEventListener('click', (ev) => {
|
||||
// console.log('Clicked inside component: ' + node.type.name);
|
||||
// ev.stopPropagation();
|
||||
// });
|
||||
// /* console.log('Set event listener for '+ node.type.name) */;
|
||||
// }
|
||||
// }
|
||||
|
||||
fn.call(null, node);
|
||||
|
||||
if (node.child !== null) {
|
||||
traverse(node.child, fn);
|
||||
}
|
||||
if (node.sibling !== null) {
|
||||
traverse(node.sibling, fn);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// findComponent = (node, name) => {
|
||||
// console.log(node)
|
||||
// if (!isNodeSimple(node) && node.type.name === name) {
|
||||
// console.log('Found node with name ' + node.type.name);
|
||||
|
||||
// /* if (node.child) {
|
||||
// let innerNode = node.child;
|
||||
// console.log('Highlighting its inner nodes in yellow');
|
||||
|
||||
// highlightNode(node, true);
|
||||
|
||||
// } */
|
||||
// return node;
|
||||
// }
|
||||
|
||||
// let returnVal = undefined;
|
||||
// returnVal = node.child && findComponent(node.child, name);
|
||||
// if (returnVal) { return returnVal }
|
||||
// returnVal = node.sibling && findComponent(node.sibling, name);
|
||||
// if (returnVal) { return returnVal }
|
||||
// };
|
||||
|
||||
// highlightNode = (node, ignoreSibling = false) => {
|
||||
// if (isNodeSimple(node)) {
|
||||
// node.stateNode.style.backgroundColor = "yellow";
|
||||
// } else {
|
||||
// node.child && highlightNode(node.child);
|
||||
// }
|
||||
// !ignoreSibling && node.sibling && highlightNode(node.sibling);
|
||||
// }
|
||||
|
||||
export { traverse };
|
||||
export { traverse };
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
// import { isNodeSimple } from './utils';
|
||||
import {FiberNode} from './mocked-types';
|
||||
|
||||
function traverse(node: FiberNode, fn: (node: FiberNode) => any) {
|
||||
fn.call(null, node);
|
||||
|
||||
if (node.child !== null) {
|
||||
traverse(node.child, fn);
|
||||
}
|
||||
if (node.sibling !== null) {
|
||||
traverse(node.sibling, fn);
|
||||
}
|
||||
};
|
||||
|
||||
export default traverse;
|
||||
Reference in New Issue
Block a user