gpt4 book ai didi

javascript - 这个图案有名字吗?

转载 作者:搜寻专家 更新时间:2023-11-01 04:20:42 24 4
gpt4 key购买 nike

我基本上非常确定这种模式一定存在并且拥有一个名称...现在我将其称为“门模式”...

在这里:

在我网页的 javascript 中,我必须触发各种异步进程。我们不讨论 async js 有多真实,但无论如何我必须触发 2 或 3 个 AJAX 调用,必须确定,UI 构建已经完成,等等。

只有这样,当所有这些过程都完成后,我才想运行某个功能。并且恰好一次。

示例

1: cropStore loaded()
2: resizeEvent()
3: productStore loaded()

模式:在每个(成功的)Ajax-load-callback 结束时,GUI 构造例程结束时,等等......我将相应的标志从 false 设置为 true 并调用 gatedAction()

onEvent( 'load',
{
.... // whatever has to happen in response to cropStored, resized, etc...
// lastly:
f1 = true; //resp f2, f3, ...
gatedAction();
}

Gate 将检查标志,如果任何标志仍未设置则返回,如果所有标志(或我称之为:门)都打开,则仅调用目标函数。如果我所有的异步前置条件只调用 gatedAction() 一次,我希望我可以确定,实际的 targetFunction 只调用了一次 ()。

gatedAction ()
{
// Gate
if ( ! f1) return;
if ( ! f2) return;
if ( ! f3) return;

// actual Action ( <=> f1==f2==f3==true )
targetFunction();
}

在实践中它工作可靠。旁注:我认为可以忽略 java 典型(不是 js 典型)同步/ volatile 问题,因为 javascript 不是真正的多线程。 Afaik 一个函数永远不会在中间停止,只是为了在同一文档运行时授予另一个 javascript 函数...

那么,任何人,有这个名字吗? :-)

我实际上经常需要这种模式,尤其是对于复杂的后端 UI。 .)

最佳答案

听起来像Balking pattern对我来说。

关于javascript - 这个图案有名字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3904931/

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