Javascript 如何下载Blob为JSON的VUEX应用商店

Javascript 如何下载Blob为JSON的VUEX应用商店,javascript,json,vue.js,blob,vuex,Javascript,Json,Vue.js,Blob,Vuex,我的Vuex存储中有blob,我想将应用程序的状态下载为.JSON并将其还原 一般来说,JSON.stringify(store.state,…)在没有blob的情况下工作得很好。我只是不知道如何将blob存储到JSON中 这是我的密码。if(value instanceof Blob)-块包含我将Blob转换为JSON的尝试 const s = JSON.stringify(store.state , (key, value) => { // let proc

我的Vuex存储中有blob,我想将应用程序的状态下载为.JSON并将其还原

一般来说,JSON.stringify(store.state,…)在没有blob的情况下工作得很好。我只是不知道如何将blob存储到JSON中

这是我的密码。
if(value instanceof Blob)
-块包含我将Blob转换为JSON的尝试

const s = JSON.stringify(store.state
      , (key, value) => {
        // let process = true;
      if (typeof value === 'object') {


        if(value instanceof Blob){

          //I can't get this to work:


          // const reader = new FileReader();

          // // let process = false;
          // reader.onload = function(event){
          //   console.log(JSON.stringify(reader.result));

          //   value = JSON.stringify(reader.result);
          //   return value;
          // };

          // reader.readAsText(value);
          // process = false;

          }

        // Duplicate reference found, discard key
        if (cache.includes(value)) return;

        // Store value in our collection
        cache.push(value);
       }
       if(process){
      return value;
       }
    })

    //download
    const newBlob = new Blob([s], { type: 'application/json;' });
    const filename = `jam-along-${new Date().getTime()}.json`;
    saveAs(newBlob, filename);
    cache = [];


  }
另一个想法是使用Vuex Persist下载带有定制的
saveState:(键、状态、存储)=>{…
,但我无法让它工作。我不希望Vuex Persist在sessionStore或localStorage中执行任何操作,我希望在不改变存储的情况下从外部触发
saveState

有没有办法下载和恢复我的vuex商店

谢谢大家!