Beste Möglichkeit zum Schreiben von Schleifen mit Versprechungen (ctx.sync) in der JavaScript-API für Office

Es gibt viele Threads, die über die Gewährleistung der Ausführungsreihenfolge von Versprechungen in Schleifen diskutieren. Ich möchte wissen, was die beste Vorgehensweise in der JavaScript-API für Office-Add-Ins ist. Meistens ist das fragliche Versprechenctx.sync().

Hier finden Sie ein Snippet, um die Adresse einer Liste von Excel-Bereichen nacheinander auszudrucken. Der Test zeigt, dass die Reihenfolge der Excel-Bereiche eingehalten wird. Aber die Frage istwhether und wie man @ garantie die Ausführungsreihenfolge?

function loadAll () {
   var ranges = ["A:A", "B:B", "C:C", "D:D", "E:E"];
   var sheet = "Sheet1";
   for (var i = 0; i < ranges.length; i++) {
       loadRange(ranges[i], sheet);        
   }
}

function loadRange (range, sheet) {
   Excel.run(function (ctx) { 
       var r = ctx.workbook.worksheets.getItem(sheet).getRange(range);
       r.load('address');
       return ctx.sync().then(function() {
          console.log(r.address);
       });
   });
}

Kann mir jemand helfen?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage