【问题标题】:What is the difference between set() and update() method in Svelte Store?Svelte Store 中的 set() 和 update() 方法有什么区别?
【发布时间】:2022-11-05 21:43:43
【问题描述】:

我是 Svelte 商店的新手。 Here in svelte tutorial,他们在<Incrementer/><Decrementer/> 组件中使用了update() 方法来更新值。但是在<Resetter/> 中,他们使用set() 方法来重置值。苗条商店中的update()set() 方法之间到底有什么区别?

【问题讨论】:

    标签: svelte svelte-store


    【解决方案1】:

    来自docs

    set 是一种采用一个参数的方法,该参数是要设置的值。如果存储值不等于它,则存储值被设置为参数的值。

    update 是一种采用回调参数的方法。回调将现有的存储值作为其参数,并返回要设置到存储的新值。

    因此,如果下一个值应该取决于当前值,您可以使用update

    另外:update 只是为了方便而存在,并且是不是“商店合同”的一部分:

    • 可读存储只需要subscribe 方法
    • 可写存储需要set 方法

    $store = value 这样的组件代码在内部使用set

    【讨论】:

    • So you can use update if the next value should be dependent on the current value => 这一行回答了我的问题。谢谢。
    • 但是你可以在任何情况下都使用更新,为什么 set() 甚至存在?
    • @Knemay setupdate 简单,不需要传递函数。
    猜你喜欢
    • 1970-01-01
    • 2016-08-11
    • 2011-05-19
    • 2019-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-05
    • 1970-01-01
    相关资源
    最近更新 更多