javascript - Generer samme tilfeldige farge ved sideoppdatering i React


I applikasjonen min tildeler jeg den samme tilfeldige fargen som bakgrunnsfarge for den samme uniqueID, og jeg vil også at denne fargen skal være den samme tilfeldige fargen hvis siden lastes på nytt.

Min tilnærming og nåværende oppførsel er lik løsningen i dette tidligere innlegget: Generate Random Same Colors in React, men fargene endres hvis siden lastes på nytt.

Spørsmål: Finnes det en måte å kartlegge uniqueID til en tilfeldig farge, og få den til å være vedvarende i forskjellige instanser av appen min ved bruk av REACT?

Se nedenfor min nåværende kode:

function getRandomColor(): string{
  return '#' + Math.floor(Math.random()*16777215).toString(16);
}
let colorMap = new Map<number, string>();
function setColor(uniqueId: number): string{
  if(colorMap.get(uniqueId) == null){
    colorMap.set(uniqueId,getRandomColor());
  }
  return colorMapping.get(id) + "";
}
//later in the code
color: setColor(Number(d_id)),

Svar #1

Du kan bruke en av de ulike lagringsalternativene for å lagre dette og deretter gjenopprette ved hver sideinnlasting:

  • Småkaker
  • Økt
  • LocalStorage