首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我怎样才能使皮尼亚商店热重新加载的变化?

我怎样才能使皮尼亚商店热重新加载的变化?
EN

Stack Overflow用户
提问于 2022-07-06 12:15:59
回答 1查看 1.5K关注 0票数 1
代码语言:javascript
复制
import { defineStore, acceptHMRUpdate } from 'pinia';
import { v4 as uuidv4 } from 'uuid';

export const useStoreNotes = defineStore('storeNotes', {
  state: () => ({
    notes: [
      {
        id: '8d3ce756-ef35-4e68-80bd-fb97e03a831b',
        content: 'Learn React',
      },
      {
        id: '11860d36-cb57-455e-9b9c-083ef5762f7e',
        content: 'Learn Java',
      },
    ],
  }),
})

if (import.meta.hot) {
  import.meta.hot.accept(acceptHMRUpdate(useStoreNotes, import.meta.hot));
}

嘿,我正在尝试使用HMR (热模块替换)在皮尼亚(Vuex5)。我也在用维特。我尝试使用Pinia:https://pinia.vuejs.org/cookbook/hot-module-replacement.html的官方文档中的热重加载。

但热重装不起作用。如果我在商店中更新了什么东西,我必须刷新页面,并且我希望看到这些更改而不刷新页面。

EN

回答 1

Stack Overflow用户

发布于 2022-08-16 21:09:12

看起来你有正确的语法。我的猜测是,和我一样,当您更改状态值时,您期望页面更新;然而,HMR看起来实际上是按预期工作的。见这个问题的答案

是的,这样做的想法是添加新状态不应该重置状态的其他值,这样就可以始终保留现有的状态值。这也意味着您可以更改一个值,注释行并保存(这将移除状态属性),然后再运行注释和保存。

我能够认识到HMR确实是通过打开终端来工作的,注意到我对商店的更新已经被记录下来了。参见我的终端示例。

同样,如果向存储添加了新状态,则应该在Vue DevTools中看到相应的存储更新。这两种方式使我能够确定HMR正在按计划工作(不幸的是,这不是我所希望的)。

最后,正如对上述GitHub问题的响应中所提到的,您确实可以注释掉状态代码,保存,取消注释,然后再次保存以强制新值出现。在我看来并不理想,但我认为这是一个可行的解决办法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72883410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档