mirror of
				https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web.git
				synced 2025-11-04 16:23:41 +08:00 
			
		
		
		
	Merge pull request #2360 from imldy/fix_can't_edit_old_mask
fix: 迁移面具对象的key以解决无法编辑旧面具的问题
This commit is contained in:
		@@ -109,7 +109,7 @@ export const useMaskStore = create<MaskStore>()(
 | 
				
			|||||||
    }),
 | 
					    }),
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      name: StoreKey.Mask,
 | 
					      name: StoreKey.Mask,
 | 
				
			||||||
      version: 3,
 | 
					      version: 3.1,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      migrate(state, version) {
 | 
					      migrate(state, version) {
 | 
				
			||||||
        const newState = JSON.parse(JSON.stringify(state)) as MaskState;
 | 
					        const newState = JSON.parse(JSON.stringify(state)) as MaskState;
 | 
				
			||||||
@@ -119,6 +119,14 @@ export const useMaskStore = create<MaskStore>()(
 | 
				
			|||||||
          Object.values(newState.masks).forEach((m) => (m.id = nanoid()));
 | 
					          Object.values(newState.masks).forEach((m) => (m.id = nanoid()));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (version < 3.1) {
 | 
				
			||||||
 | 
					          const updatedMasks: Record<string, Mask> = {};
 | 
				
			||||||
 | 
					          Object.values(newState.masks).forEach((m) => {
 | 
				
			||||||
 | 
					            updatedMasks[m.id] = m;
 | 
				
			||||||
 | 
					          });
 | 
				
			||||||
 | 
					          newState.masks = updatedMasks;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        return newState as any;
 | 
					        return newState as any;
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user