From 3f08ed229f0a77a028b94e0b467554bf5c8f97da Mon Sep 17 00:00:00 2001 From: * <8> Date: Thu, 17 Feb 2022 10:55:53 +0800 Subject: [PATCH] Match-id-a4195774976a6bab660ca01ecef0e20e8c93baf6 --- libs/horizon/src/renderer/vnode/VNode.ts | 2 +- libs/horizon/src/renderer/vnode/VNodeCreator.ts | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libs/horizon/src/renderer/vnode/VNode.ts b/libs/horizon/src/renderer/vnode/VNode.ts index 9c9fd8e2..0270165b 100644 --- a/libs/horizon/src/renderer/vnode/VNode.ts +++ b/libs/horizon/src/renderer/vnode/VNode.ts @@ -74,7 +74,7 @@ export class VNode { suspenseDidCapture: boolean = false; // suspense是否捕获了异常 promiseResolve: boolean = false; // suspense的promise是否resolve - path: Array = []; // 保存从根到本节点的路径 + path: string = ''; // 保存从根到本节点的路径 toUpdateNodes: Set | null = null; // 保存要更新的节点 belongClassVNode: VNode | null = null; // 记录JSXElement所属class vNode,处理ref的时候使用 diff --git a/libs/horizon/src/renderer/vnode/VNodeCreator.ts b/libs/horizon/src/renderer/vnode/VNodeCreator.ts index 11abe1b1..40b5cc97 100644 --- a/libs/horizon/src/renderer/vnode/VNodeCreator.ts +++ b/libs/horizon/src/renderer/vnode/VNodeCreator.ts @@ -143,7 +143,7 @@ export function createUndeterminedVNode(type, key, props) { export function createTreeRootVNode(container) { const vNode = newVirtualNode(TreeRoot, null, null, container); - vNode.path.push(0); + vNode.path += 0; createUpdateArray(vNode); return vNode; } @@ -155,7 +155,7 @@ export function createVNode(tag: VNodeTag | string, ...secondArg) { case TreeRoot: // 创建treeRoot vNode = newVirtualNode(TreeRoot, null, null, secondArg[0]); - vNode.path.push(0); + vNode.path += 0; createUpdateArray(vNode); break; @@ -165,7 +165,7 @@ export function createVNode(tag: VNodeTag | string, ...secondArg) { } export function updateVNodePath(vNode: VNode) { - vNode.path = [...vNode.parent.path, vNode.cIndex]; + vNode.path = vNode.parent.path + vNode.cIndex; } export function createVNodeFromElement(element: JSXElement): VNode {