debugging 当使用具有选项的Pinia的defineStore而不是storeSetup时,React性中断

mzmfm0qo  于 2023-05-07  发布在  React
关注(0)|答案(1)|浏览(81)

在当前的项目中,我有两种不同类型的Pinia存储定义。我将以简短的形式发布它们。

// First Storage Definition using storeStup

export const useStore = defineStore("storeId", () => {
  const isExpanded: Ref<boolean> = ref(false);
  
  return { isExpanded };
})
// Second Storage Definition using options
const useStore = defineStore("storeId2", {
  state: () => ({
    isExpanded: ref(false),
  }),
  getters: {
    getIsExpanded: (state) => state.isExpanded,
  },
});

如果我现在使用storeToRefs来提取isExpanded,就像这样

const store = useStore();
const { isExpanded } = storeToRefs(store);

它们的行为是完全一样的还是不同的
我问这个问题是因为我正在写一个Chrome扩展程序并重构一个商店,似乎我做了一些事情来打破React性,因为第二个例子不是React性的,而第一个例子是React性的,例如。如果isExpanded从false切换到true,则使用v-if=“isExpanded”渲染组件。
任何线索将是真正有帮助的,因为我完全失去了,觉得我已经尝试了一切

wribegjk

wribegjk1#

尝试使用toRef,你会收到一个广告说,你可以松散的React,但应该工作...

相关问题