0
我试图创建一个小的JavaScript框架,可以使它更容易处理第三方库。该库主要是异步的,例如要建立一个连接,你将使用代码:封装异步请求
var com = establishConnection("api-key");
com.onsuccess = function(c) {
c.submit("something");
};
我要的是能够用我的包装框架,能够简单地做
var com = establishConnection("api-key");
com.submit("something");
很显然,尽管我需要一种方法来处理原始库的异步性质,因此它将在执行命令之前等待连接建立。我知道我可以做类似设置一个标志,表示该连接是否成立,然后使用某种类型的循环延迟,即
function submit(msg) {
while (!connectionEstablished) {}
// do submit stuff
}
但它似乎是这样一个丑陋的黑客攻击,没有任何人有任何意见更好的方法来做到这一点?
是的,我同意,不幸的是,有几点我将要掩盖异步性,只是希望有一个更好的解决方案。大多数时候异步请求都很快,它们都是通过本地服务器运行的,但我想我可以选择性地屏蔽哪些行为,并且只在完全必要时才屏蔽。不过谢谢 –