我有以下useLocations.js
首曲子:
export const useLocations = defineStore('useLocations', () => {
const state = reactive({
data: 1
})
const update = () => {
state.data = 2
}
return {
...toRefs(state),
update
}
})
我在我的locations.vue
组件中访问它,如下所示:
const { data, update } = useLocations
update()
console.log(data) // 1
我希望console.log(data)
是2
而不是1
我试着像这样访问store ,这确实有效:
const store = useLocations()
const { data } = storeToRefs(store)
const { update } = store
update()
console.log(data) // 2
但是我想要一个没有storeToRefs
的解决方案,我不明白为什么组合中的toRefs
不起作用.
根据Vue文档https://vuejs.org/api/reactivity-utilities.html#torefs,这正是我的场景,react 性不知何故中断了.
我想要一个没有storeToRefs
的解决方案,这样我就可以避免在我的组件中调用两次存储,一次是针对状态,一次是针对操作.