これはおそらく非常に基本的なことですが、私のケースに対する明確な答えが見つからないようです。
ワークフローの残りの部分を続行する前に、1 つの機能を確実に実行して完了する方法を知りたい
アラートの下のスクリプトでは、スクリプトが up.settings.multipart_params に入る前に getsS3policy(file) を完了する必要がある場合、「1」、「3」、「2」として発生します。
preinit: {
UploadFile: function (up, file) {
getS3Policy(file);
alert("3");
up.settings.multipart_params = {
key: path,
filename: file.name,
AWSAccessKeyId: 'AKIAJIRIA6XD4V5MFWCA',
acl: 'private',
policy: policy,
signature: signature,
success_action_status: '201'
}
}
},
});
function getS3Policy(file) {
alert("1");
data = { 'alc': 'private', 'bucket': 'PhotojimaDev', 'key': path, 'file': file.name };
$.ajax({
url: '/desktopmodules/uploader/API/upload/getPolicy',
type: 'POST',
data: data,
success: function (response) {
console.log(response);
if (response) {
policy = response.policy;
signature = response.signature;
alert("2");
}
else {
return "Error";
}
}
});