我正在尝试在 javascript 中初始化一个变量(具体来说,我想使用带有 jQuery 模板插件的远程模板),然后让多个异步回调等待它在继续之前被初始化。我真正想要的是能够通过<script type="text/x-jquery-tmpl" src="/my/remote_template">
标签链接到远程模板,但除非我可以摆脱与pthread_once
.
理想情况下,api 看起来像:
$.once(function_to_be_called_once, function_to_be_called_after_first)
并使用如下:
var remote_template = "";
function init_remote_template() {
remote_template = $.get( {
url: "/my/remote/template",
async: false
});
}
$.once(init_remote_template, function () {
// Add initial things using remote template.
});
然后,在其他地方:
$.get({
url: "/something/that/requires/an/asynchronous/callback",
success: function () {
$.once(init_remote_template, function () {
// Do something using remote template.
}
}
});
这样的事情存在吗?