Vue 設置等待時間執行for循環


發送異步請求
async executewirelessscene(item) {
      let _this = this;
      let devices = _this.currentdeviceList;
      let Scenenumber = item.Slot;
      // console.log(Scenenumber);
      // console.log(devices.length);
      for (var i = 0, length = devices.length; i < length; i++) {
        var dName = devices[i].deviceName;
        var dzigbeeid = devices[i].zigbeeid;
        var dgroupid = devices[i].groupid;
        const param = {
          type: dgroupid,
          gatewayId: _this.gatewayID,
          zigbeeId: dzigbeeid,
          value: Scenenumber
        };
        const result = await this.post(
          "/executewirelessscene",
          JSON.stringify(param)
        );
        if (result.success) {
          this.$message({
            message: dName + "指令下發成功",
            type: "success"
          });
        } else {
          this.$message({
            message: "failed!",
            type: "warning"
          });
        }
        this.sleep(500);//for循環等待500ms
      }
    },

請求等待函數

//請求等待函數
    async sleep(n) {
        var start = new Date().getTime();
        while (true) {
            if (new Date().getTime() - start > n) {
                break;
            }
        }
    },

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM