refactor(stage): node-list转成数组使用array.from

This commit is contained in:
roymondchen 2023-10-20 16:52:42 +08:00
parent 921867f650
commit 04025682d5
4 changed files with 6 additions and 7 deletions

View File

@ -90,7 +90,7 @@ export default class MoveableOptionsManager extends EventEmitter {
* @param selectedElList * @param selectedElList
* @param allElList * @param allElList
*/ */
protected setElementGuidelines(selectedElList: HTMLElement[], allElList: HTMLElement[]): void { protected setElementGuidelines(selectedElList: HTMLElement[], allElList: Element[]): void {
this.elementGuidelines.forEach((node) => { this.elementGuidelines.forEach((node) => {
node.remove(); node.remove();
}); });
@ -224,7 +224,7 @@ export default class MoveableOptionsManager extends EventEmitter {
* @param allElList * @param allElList
* @returns frame * @returns frame
*/ */
private createGuidelineElements(selectedElList: HTMLElement[], allElList: HTMLElement[]): DocumentFragment { private createGuidelineElements(selectedElList: HTMLElement[], allElList: Element[]): DocumentFragment {
const frame = globalThis.document.createDocumentFragment(); const frame = globalThis.document.createDocumentFragment();
for (const node of allElList) { for (const node of allElList) {
@ -246,7 +246,7 @@ export default class MoveableOptionsManager extends EventEmitter {
* @param eleList * @param eleList
* @returns * @returns
*/ */
private isInElementList(ele: HTMLElement, eleList: HTMLElement[]): boolean { private isInElementList(ele: Element, eleList: Element[]): boolean {
for (const eleItem of eleList) { for (const eleItem of eleList) {
if (ele === eleItem) return true; if (ele === eleItem) return true;
} }

View File

@ -132,7 +132,7 @@ export default class StageDragResize extends MoveableOptionsManager {
this.dragResizeHelper.setMode(this.mode); this.dragResizeHelper.setMode(this.mode);
// 设置选中元素的周围元素,用于选中元素跟周围元素对齐辅助 // 设置选中元素的周围元素,用于选中元素跟周围元素对齐辅助
const elementGuidelines: HTMLElement[] = Array.prototype.slice.call(this.target?.parentElement?.children) || []; const elementGuidelines: Element[] = Array.from(this.target?.parentElement?.children || []);
this.setElementGuidelines([this.target as HTMLElement], elementGuidelines); this.setElementGuidelines([this.target as HTMLElement], elementGuidelines);
return this.getOptions(false, { return this.getOptions(false, {

View File

@ -80,8 +80,7 @@ export default class StageMultiDragResize extends MoveableOptionsManager {
this.dragResizeHelper.updateGroup(els); this.dragResizeHelper.updateGroup(els);
// 设置周围元素,用于选中元素跟周围元素的对齐辅助 // 设置周围元素,用于选中元素跟周围元素的对齐辅助
const elementGuidelines: HTMLElement[] = const elementGuidelines: Element[] = Array.from(this.targetList[0].parentElement?.children || []);
Array.prototype.slice.call(this.targetList[0].parentElement?.children) || [];
this.setElementGuidelines(this.targetList, elementGuidelines); this.setElementGuidelines(this.targetList, elementGuidelines);
this.moveableForMulti?.destroy(); this.moveableForMulti?.destroy();

View File

@ -30,7 +30,7 @@ const getParents = (el: Element, relative: Element) => {
return parents; return parents;
}; };
export const getOffset = (el: TargetElement): Offset => { export const getOffset = (el: Element): Offset => {
const htmlEl = el as HTMLElement; const htmlEl = el as HTMLElement;
const { offsetParent } = htmlEl; const { offsetParent } = htmlEl;