立即执行函数使用报错


在代码中使用立即执行函数设置异步函数的执行顺序时,有时候会报错 xxx is not a function, 因为立即执行函数前后需要添加 ; (分号),否则会把前后的语句都识别成函数

正确应用如下:

      this.nopagination = true;

        (async () => {
          if( this.tabelType == '变压器' ){
            await getVSubstationList().then((response) => {
              console.log("变电站信息", response)
              if(response.code == 0){
                this.dataList = response.data.map((v, i) => {
                  return { ...v, index: i+1 }
                })
              }
            })
          }
          
          this.tabelType = "遥信"
          this.loading = false
          this.$nextTick(() => {
            var el = document.getElementsByClassName(`table-${data.id}`)[0]
            el.scrollIntoView()
            // 调用内部方法 高亮选中的行
            this.$refs.tableData.highLightHandle(this.dataList.find(v => v.id == data.id))
          })
        })();