【问题标题】:Is it possible to sync prop value with writable store and vice versa in Svelte?是否可以在 Svelte 中将 prop 值与可写存储同步,反之亦然?
【发布时间】:2021-07-04 13:04:37
【问题描述】:

是否可以将 prop 值与可写存储值同步,就像 2-way binding 的工作原理一样。在下面的示例中,我有一个手风琴,一次可以激活一个项目。 Accordion 包含一个 Body 组件,其中一个可写存储与来自 prop 的初始值一起使用。当 Body 组件中的 prop 更改时,可写存储值不会更改,而当可写存储值更改时,道具不会更改。可写存储在 setContext 的帮助下与 Item 组件共享。在Item组件中,当item被点击时,可写store会变为当前item的id。

Link to repl

【问题讨论】:

    标签: svelte


    【解决方案1】:

    active发生变化时需要更新store的值。

    body.svelte在线14:

    $: activeStore.set(active);
    

    要在商店的值更改时更新App.svelte 中的active,您还需要在body.svelte 中更新active$activeStore 值更改时。
    线15

    $: active = $activeStore;
    

    https://svelte.dev/repl/0d592275ba814ea682a4292b401f0421?version=3.37.0

    我没有使用$activeStore = active 来更新 store 的值,因为那样会出现循环依赖错误。

    【讨论】:

    • 非常感谢,我的意思是这将有助于分配
    猜你喜欢
    • 2021-05-22
    • 2020-12-30
    • 2021-05-08
    • 1970-01-01
    • 1970-01-01
    • 2011-07-10
    • 1970-01-01
    • 2014-07-26
    • 1970-01-01
    相关资源
    最近更新 更多