Permanently Fix LocalStorage Problems
This commit is contained in:
parent
86cbc1d81d
commit
9a63e033a1
1 changed files with 17 additions and 3 deletions
|
@ -22,6 +22,7 @@
|
||||||
import {Inventory} from "$lib/containers.svelte";
|
import {Inventory} from "$lib/containers.svelte";
|
||||||
import InventoryList from "$lib/components/InventoryList.svelte";
|
import InventoryList from "$lib/components/InventoryList.svelte";
|
||||||
|
|
||||||
|
const STORAGE_VERSION = "2";
|
||||||
let i18n = $state(new Localization("en-GB"));
|
let i18n = $state(new Localization("en-GB"));
|
||||||
let mounted = $state(false);
|
let mounted = $state(false);
|
||||||
|
|
||||||
|
@ -50,7 +51,7 @@
|
||||||
let material: CargoMaterial = $state(CargoMaterial.Ore);
|
let material: CargoMaterial = $state(CargoMaterial.Ore);
|
||||||
$effect(() => {
|
$effect(() => {
|
||||||
if (mounted) {
|
if (mounted) {
|
||||||
localStorage.setItem("density", JSON.stringify(material.save()));
|
localStorage.setItem("density", material.save());
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -80,7 +81,20 @@
|
||||||
i18n.language = navigator.language;
|
i18n.language = navigator.language;
|
||||||
}
|
}
|
||||||
|
|
||||||
let ret = getFromLocalStorage("ship");
|
let ret = getFromLocalStorage("version");
|
||||||
|
if (ret.result) {
|
||||||
|
console.log(ret);
|
||||||
|
if (ret.value !== STORAGE_VERSION) {
|
||||||
|
localStorage.clear();
|
||||||
|
localStorage.setItem("version", STORAGE_VERSION);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
localStorage.clear();
|
||||||
|
localStorage.setItem("version", STORAGE_VERSION);
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = getFromLocalStorage("ship");
|
||||||
if (ret.result) {
|
if (ret.result) {
|
||||||
ship.load(JSON.parse(ret.value));
|
ship.load(JSON.parse(ret.value));
|
||||||
}
|
}
|
||||||
|
@ -92,7 +106,7 @@
|
||||||
|
|
||||||
ret = getFromLocalStorage("density");
|
ret = getFromLocalStorage("density");
|
||||||
if (ret.result) {
|
if (ret.result) {
|
||||||
let parsed = JSON.parse(ret.value);
|
let parsed = ret.value;
|
||||||
Object.values(CargoMaterial).forEach((cargoMaterial) => {
|
Object.values(CargoMaterial).forEach((cargoMaterial) => {
|
||||||
if (cargoMaterial.name === parsed) {
|
if (cargoMaterial.name === parsed) {
|
||||||
material = cargoMaterial
|
material = cargoMaterial
|
||||||
|
|
Loading…
Reference in a new issue