当我在页面上添加苗条组件时,我创建了新的类示例。
import ComponentA from "./Component.svelte";
let component = new ComponentA({...});
<ComponentA/>
并且每次组件销毁并再次创建。
但我需要保存组件的状态。
(例如:块的显示、块的位置、文本等等)
当我创建新的示例时,我可以把它放在全局变量中。我可以从全局输出吗?那是真的吗?
当我在页面上添加苗条组件时,我创建了新的类示例。
import ComponentA from "./Component.svelte";
let component = new ComponentA({...});
<ComponentA/>
并且每次组件销毁并再次创建。
但我需要保存组件的状态。
(例如:块的显示、块的位置、文本等等)
当我创建新的示例时,我可以把它放在全局变量中。我可以从全局输出吗?那是真的吗?
首先,了解店铺。
例如,将滚动位置保存在 App.svelte 组件中(如果您更改组件或...不会丢失它们):
在您的 stores.js 中导出一个变量
export const AppY = writable(0);
然后将您的 Y 位置(带有 svelte:scrollY 的 App.svelte 组件)绑定到一个变量。
在您的 App.svelte 中:
import { AppY } from "../stores.js";
// some code
let Y = ... // bind your svelte:scrollY here
$: $AppY = Y;
现在您在可写存储中拥有了 scrollY 位置。要长时间保存此位置,您可以使用localStorage。