gpt4 book ai didi

JavaScript:以函数式方式重新组织 Canvas 渲染

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:40:23 24 4
gpt4 key购买 nike

<分区>

是否有更好或更“实用”的方式来组织此代码?

let activeCanvas = null;

export function createLayer() {
if (activeCanvas)
activeCanvas.disableInteraction();

let newCanvas = createCanvas({ transparent: !!activeCanvas});

let parentCanvas = activeCanvas;
activeCanvas = newCanvas;

return {
stage: newCanvas.stage,
destroy() {
newCanvas.destroy();
parentCanvas.enableInteraction();
activeCanvas = parentCanvas;
}
}
}

这将创建一个新层并将舞台返回给调用者以及再次销毁该层然后使父层成为事件层的能力。

图层可以堆叠在一起。

...这个模块作用域的“activeCanvas”变量怎么样?有没有一种方法可以更“实用”地实现此逻辑并将其结束在某处的调用堆栈上?

更新

代码按原样运行良好 - 这只是一个关于风格、优雅以及如何以函数式方式正确编程的问题。

我对代码很满意 - 我只是觉得有一种更“开明”的方法来做到这一点,但我就是想不通。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com