JavaScript使用FileReader同步读取blob内容转成string

69 阅读1分钟
export async function readBlobAsText(data) {
  return new Promise((resolve, reject) => {
    const reader = new FileReader();
    // 设置好回调
    reader.onload = async () => {
      try {
        const response = JSON.parse(reader.result);
        // 成功就使用resolve
        resolve(response);
      } catch (err) {
        // 失败就使用resolve
        reject(err);
      }
    };
    reader.onerror = (error) => {
      reject(error);
    };
    // 开始读取
    reader.readAsText(data);
  });
};