Javascript LoadFromJson不工作/在上载结构文本后忽略对象属性

Javascript LoadFromJson不工作/在上载结构文本后忽略对象属性,javascript,angular,fabricjs,Javascript,Angular,Fabricjs,在画布的上传和下载过程中,我遵循以下步骤。这个项目正在进行中 我使用:JSON.stringify将画布保存到DB/text文件(可以很好地进行序列化) 我从该文本文件加载画布进行编辑:loadFromJSON(正确上载) 在上载的画布中进行一些更改并再次上载文本,Itext扩展类将被截断 下面给出了支持代码 /// /// SAVING TO TEXT FILE FORMAT /// async onSave(layoutName:any) { this.layoutName =l

在画布的上传和下载过程中,我遵循以下步骤。这个项目正在进行中

  • 我使用:JSON.stringify将画布保存到DB/text文件(可以很好地进行序列化)
  • 我从该文本文件加载画布进行编辑:loadFromJSON(正确上载)
  • 在上载的画布中进行一些更改并再次上载文本,Itext扩展类将被截断
  • 下面给出了支持代码

    /// 
    /// SAVING TO TEXT FILE FORMAT
    ///
    async onSave(layoutName:any) {
        this.layoutName =layoutName;      
        console.log(JSON.stringify(this.canvasJson));  
        if(this.canvasJson) {
          let blob = new Blob([JSON.stringify(this.canvasJson)], { type: 'text/plain' });
          FileSaver.saveAs(blob, this.layoutName + '.text'); 
          this.layoutName = null; 
        }   
        this.fabricService.addGrid(this.fabricService.canvas);
        this.addNameModel.hide();
      }
    
    ///
    /// TEXT FILE TO CANVAS
    ///
    async onChange(event:any): Promise<void> {
      const files = event.target.files;
      let file = files[0];  
      if(file) {
        const data = await new Response(file).text(); // .json()   
        console.log(data);
        this.fabricService.addGrid(this.fabricService.canvas); 
        this.fabricService.canvas.loadFromJSON(data, 
                                                this.fabricService.canvas.renderAll.bind(this.fabricService.canvas));     
        this.fabricService.updateModifications(true);
      }  
      console.log(this.fabricService.canvas);
      this.reset();
      this.uploadPromptModal.hide();
       
      }
    
    //
    ///保存为文本文件格式
    ///
    异步onSave(layoutName:any){
    this.layoutName=layoutName;
    log(JSON.stringify(this.canvasJson));
    if(this.canvasJson){
    让blob=newblob([JSON.stringify(this.canvasJson)],{type:'text/plain'});
    FileSaver.saveAs(blob,this.layoutName+'.text');
    this.layoutName=null;
    }   
    this.fabricService.addGrid(this.fabricService.canvas);
    this.addNameModel.hide();
    }
    ///
    ///文本文件到画布
    ///
    异步onChange(事件:any):承诺{
    const files=event.target.files;
    让file=files[0];
    如果(文件){
    const data=wait new Response(file).text();/.json()
    控制台日志(数据);
    this.fabricService.addGrid(this.fabricService.canvas);
    这个.fabricService.canvas.loadFromJSON(数据,
    this.fabricService.canvas.renderAll.bind(this.fabricService.canvas));
    this.fabricService.updateModifications(true);
    }  
    log(this.fabricService.canvas);
    这是reset();
    this.uploadPromptModal.hide();
    }
    
    我错过了什么

    注意:我认为在JSON.stringify(this.canvasJson)过程中可能会出现问题,它会截断扩展类