收藏
回答

downloadFile:fail permission denied?

downloadAndOpenDocument(url) {
      const selectItem = uni.getStorageSync("erpdata");
      const fileName = `${selectItem.item.Code}${selectItem.item.ProductModel}检验报告_${selectItem.subItem.Code}_${Date.now()}.docx`;
      const filePath = `${wx.env.USER_DATA_PATH}/${fileName}`;


      return new Promise((resolve, reject) => {
        uni.downloadFile({
          url,
          filePath: filePath,
          success: (res) => {
            if (res.statusCode === 200) {
              uni.openDocument({
                filePath: filePath,
                showMenu: true,
                fileType: "docx",
                success: () => resolve(),
                fail: (err) => {
                  console.error('打开文档失败:', err);
                  // 如果打开失败,尝试不指定fileType
                  uni.openDocument({
                    filePath: filePath,
                    showMenu: true,
                    success: () => resolve(),
                    fail: (err2) => {
                      console.error('再次打开文档失败:', err2);
                      reject(err2);
                    }
                  });
                },
              });
            } else {
              console.error('下载失败,状态码:', res.statusCode);
              reject(new Error(`下载失败,状态码: ${res.statusCode}`));
            }
          },
          fail: (err) => {
            console.error('下载文件失败:', err);
            reject(err);
          },
        });
      });
    },
回答关注问题邀请回答
收藏

1 个回答

  • 智能回答 智能回答 本次回答由AI生成
    03-24
    有用
    回复
登录 后发表内容