From a47d4eea28cf4479e3b3a2bd1d194a6433666825 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?LeoYuan=20=E8=A2=81=E5=8A=9B=E7=9A=93?= Date: Fri, 15 Apr 2022 10:19:19 +0800 Subject: [PATCH] feat: add mergeChldren API for shell node --- packages/shell/src/node.ts | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/packages/shell/src/node.ts b/packages/shell/src/node.ts index 27b8a62fa..b199f7408 100644 --- a/packages/shell/src/node.ts +++ b/packages/shell/src/node.ts @@ -84,7 +84,7 @@ export default class Node { /** * 是否为「模态框」节点 */ - get isModal() { + get isModal() { return this[nodeSymbol].isModal(); } @@ -208,7 +208,7 @@ export default class Node { /** * 返回节点的属性集 */ - get propsData() { + get propsData() { return this[nodeSymbol].propsData; } @@ -226,6 +226,20 @@ export default class Node { return this[nodeSymbol].getDOMNode(); } + /** + * 执行新增、删除、排序等操作 + * @param remover + * @param adder + * @param sorter + */ + mergeChildren( + remover: (node: Node, idx: number) => boolean, + adder: (children: Node[]) => any, + sorter: (firstNode: Node, secondNode: Node) => number, + ) { + return this.children?.mergeChildren(remover, adder, sorter); + } + /** * 返回节点的尺寸、位置信息 * @returns