收藏
回答

苹果端 wx.openDocument 无法打开文件?电脑模拟器和安卓手机可以?

wx.openDocument 和wx.downloadFile

 wx.downloadFile({
          url: app.globalData.ah_url +  "url",
         
          method:'GET',
          successfunction(res{
              console.log(res);
              const tempFilePath = res.tempFilePath;
              console.log(tempFilePath);
                    wx.openDocument({
                      filePath: tempFilePath,
                      fileType'xlsx',
                      successfunction (res{
                        console.log('打开文档成功')
                      },
                      failfunction(res{
                        console.log("打开文档失败")
                      }
                    });
          },
          failfunction(res{
            console.log(res);
              console.log('文件下载失败');
          },
          completefunction(res{},
      })     complete: function(res{},
      })
回答关注问题邀请回答
收藏

4 个回答

  • Zz~
    Zz~
    2020-10-20
    // "doc" | "docx" | "xls" | "xlsx" | "ppt" | "pptx" | "pdf" | undefined
        const types = ['doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'pdf']
        const fileType = types.find(i => fileName.endsWith(i)) as any
        console.log('文件预览:', url, fileName)
        wx.downloadFile({
          // 示例 url,并非真实存在
          url,
          filePath: wx.env.USER_DATA_PATH + `/${fileName}`,
          success(res) {
            if (res.statusCode === 200) {
              const filePath = res.filePath
              wx.showLoading({ title: '正在打开文件...' })
              wx.openDocument({
                filePath,
                fileType,
                success(result) {
                  wx.hideLoading({})
                  console.log('打开文档成功', result)
                },
                fail(res) {
                  toast('文件打开失败')
                  console.log('文件打开失败', res)
                },
                complete(res) {
                  toast('文件打开操作: ' + res.errMsg)
                  console.log('文件打开操作', res)
                },
              })
            }
          },
          fail() {
            toast('文件下载失败')
          },
        })
    
    

    希望有所帮助

    2020-10-20
    有用
    回复
  • 尖刀
    尖刀
    2020-10-15

    是不是苹果手机上没有打开文件的工具,比如wps

    2020-10-15
    有用
    回复
  • junyao
    junyao
    2020-08-17

    一样情况


    2020-08-17
    有用
    回复
  • ᥴꪮꪮꪶ .
    ᥴꪮꪮꪶ .
    2020-07-17

    打开调试试下

    2020-07-17
    有用
    回复 10
    • chillily
      chillily
      2020-07-17
      调试模式打开了,也不行啊,就苹果手机不行
      2020-07-17
      回复
    • ᥴꪮꪮꪶ .
      ᥴꪮꪮꪶ .
      2020-07-17回复chillily
      有无报错? 删除重新扫码呢?
      2020-07-17
      回复
    • chillily
      chillily
      2020-07-17回复ᥴꪮꪮꪶ .
      没有报错,重新扫码也不行
      2020-07-17
      1
      回复
    • chillily
      chillily
      2020-07-17
      这种和后端没啥关系吧,应该主要还是小程序问题
      2020-07-17
      回复
    • chillily
      chillily
      2020-07-17
      是不是参数设置问题,或者开发工具设置问题?
      2020-07-17
      回复
    查看更多(5)
登录 后发表内容
问题标签