Browser Data Shapes
Storage JSON Record
Values stored as browser strings can be parsed back into a typed record.
Storage JSON Record
storage.ts
type VisitState = {
visits: number;
theme: string;
};
function readState(storage: Record<string, string>): VisitState {
return JSON.parse(storage.state) as VisitState;
}
const visitCount: number = ;
const storage: Record<string, string> = {
state: JSON.stringify({
visits: visitCount,
theme: "light"
})
};
const state: VisitState = readState(storage);
console.log(`${state.theme}:${state.visits + 1}`);
type VisitState = {
visits: number;
theme: string;
};
function readState(storage: Record<string, string>): VisitState {
return JSON.parse(storage.state) as VisitState;
}
const visitCount: number = ;
const storage: Record<string, string> = {
state: JSON.stringify({
visits: visitCount,
theme: "light"
})
};
const state: VisitState = readState(storage);
console.log(`${state.theme}:${state.visits + 1}`);
storage record
Storage APIs keep string values, so code usually parses JSON before reading typed fields.