Shared strings
Spreadsheet can store repeated text in a shared string table and reference it from cell data.
// Before shared strings
{
ue: { sv: "Hello" },
fv: "Hello",
}
// With shared strings (Map-based)
{
ss: "0"
}
// sharedStrings.get("0") === "Hello"Usage
const App = () => {
const [sharedStrings, onChangeSharedStrings] = useState<Map<string, string>>(
new Map(),
);
const {
getFormattedValue,
getEffectiveExtendedValue,
getUserEnteredExtendedValue,
} = useSpreadsheetState({
sharedStrings,
onChangeSharedStrings,
});
// YJS automatically uses Map-based shared strings
useYSpreadsheetV2({
onChangeSharedStrings,
});
// For search, so it looks for shared strings index
useSearch({
getFormattedValue,
});
return (
<CanvasGrid
getFormattedValue={getFormattedValue}
getUserEnteredExtendedValue={getUserEnteredExtendedValue}
getEffectiveExtendedValue={getEffectiveExtendedValue}
/>
);
};Import and export
Notes
Last updated