收藏
回答

wx.getFileSystemManager().getFileInfo({ })无返回值?

定义了一个wx.getFileSystemManager().getFileInfo 函数用于获取图片文件的大小,但是返回值一直是 undefined

问题:

  1. 按照以下代码,首先真机调试 console.log 输出应该为:00000000000+返回的结果 ,然后才是 2222222222+返回的结果,但是输出结果却恰恰相反?
  2. 这类api 是异步函数?还没等结果输出,自己先执行了?(通俗的说,getFileInfo函数还没有执行成功或错误代码,前端文件已经自己执行了?)
  3. 这种正确的写法是什么?怎么改变成 同步执行?
//这个是 公共函数
var pubFunc = {
  compressImg(imgPath,target)=>{
    // 获取图片大小
    wx.getFileSystemManager().getFileInfo({
      filePath: imgPath,
      success(res) => {
        console.log("000000000" + res)
        return res.size
      },
      fail:(err)=>{
        return "compress error"
      }
    })
  }
}


module.exports={
  pubFunc:pubFunc
}


// 这个是前端调用
onLoad(options){
    console.log("2222222222" + pub.pubFunc.compressImg(options.imgPath,5))
}


// 真机调试结果:
  2222222222 undefined
  publicFunc.js:7 000000000[object Object]
回答关注问题邀请回答
收藏
登录 后发表内容