如果我的“创建”操作需要一段时间才能加载(由于执行 API 调用然后进行计算)向用户显示“加载屏幕”的最佳方式是什么而这个任务是在后台执行的?
编写一些 AJAX 魔法;)在激活时显示加载图像,并在 AJAX 调用完成时隐藏它。如果你不想使用 AJAX,嗯,你可以看看这个:
http://yehudakatz.com/2010/09/07/automatic-flushing-the-rails-3-1-plan/ http://yehudakatz.com/2010/09/07/automatic-flushing-the-rails-3-1-plan/
那里还有一颗宝石,在某种程度上可以做到这一点。
但我对此没有任何经验。
我会选择 AJAX 方法 =)
EDIT:
是的,您应该在 jQuery 中使用 AJAX 调用创建操作。你可以这样做:
function create() {
$('#loading_image').show();
$.ajax({
type: 'POST',
url: /* URL to your create action: e.g. '/user/create/' */,
data: $('form').serialize(),
success: createSuccessHandler,
error: createErrorHandler,
complete: hideLoadingImage
});
}
function createSuccessHandler(data) {
alert("User created!")
}
function createErrorHandler(data) {
alert("It failed, ffs!")
}
function hideLoadingImage() {
$('#loading_image').hide()
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)