vue3+pinia 重置state
做一个全局登录弹窗,但是在弹窗关闭时需要清空弹窗内的内容,因为是全局的弹窗,所以这里弹窗的所有数据都用的pinia储存的,因为绑定的数据有两层,所以这里使用到了对象的深拷贝。
import {defineStore} from "pinia";
import {Names} from "@/store/name";
import {message} from "ant-design-vue";
import {login} from "@/view/components/componentApi";
let closeData = {
isShow:false,
data:{
flag:false
},
}
export const useLoginModalStore = defineStore(Names.LOGINMODAL,{
state:()=> {
return {
isShow:false,
data:{
phone: '',
}
}
},
getters:{},
actions:{
...
// 模态框关闭 重置数据
handleModalClose(){
this.$state = JSON.parse(JSON.stringify(closeData)) // 深拷贝对象 并赋值给pinia
}
}
})