微信小程序直接打开文件操作(pdf)

1. 需求场景

对于需要直接打开pdf等文件的情况
注意:做这种操作时,按钮要做防抖处理

2.代码实现

微信接口地址:

  1. wx.getFileSystemManager()
  2. 文件系统中的用户目录路径
    wx.env.USER_DATA_PATH
  3. FileSystemManager
  4. wx.openDocument
async openSummary() {
    try {
    // 调用自己后台接口,获取数据
      let res = await getSummary({ platId: this.data.id });
      if (res.success) {
        let fileManager = wx.getFileSystemManager();
        //生成一个以时间戳命名的pdf文件
        let FilePath = wx.env.USER_DATA_PATH + '/' + new Date().getTime() + '.pdf';
        fileManager.writeFile({
          data: res.data.summary,
          filePath: FilePath,
          encoding: 'base64', //编码方式
          success: (result) => {
            wx.openDocument({
              //我这里成功之后直接打开
              filePath: FilePath,
              showMenu: true,
              fileType: 'pdf',
              success: (result) => {
                console.log('打开文档成功');
              },
              fail: (err) => {
                console.log('打开文档失败', err);
              },
            });
          },
          fail: (res) => {
            console.log(res, '解析pdf流失败');
          },
        });
      }
    } catch (e) {
      console.log(e, '获取小结失败');
    }
  },

你可能感兴趣的:(微信小程序,小程序,文件操作)