当前位置: 首页 > news >正文

双语企业网站app开发公司哪家比较好

双语企业网站,app开发公司哪家比较好,做app和做网站,网站开发的前后端是哪些一、前言 测试提出,登出登录后,再次进入页面后。页面的查询项非初始状态。检查后发现,是因为查询项的值存到了store呢,从store中获取,故需要一个重置store的方法 二、pinia 查阅pinia官网后,发现pinia提…

一、前言

测试提出,登出登录后,再次进入页面后。页面的查询项非初始状态。检查后发现,是因为查询项的值存到了store呢,从store中获取,故需要一个重置store的方法

二、pinia

查阅pinia官网后,发现pinia提供了一个reset方法可以重置状态。官网位置:重置状态

重置状态

您可以通过调用 store 上的 $reset() 方法将状态 reset 到其初始值:

const store = useStore()store.$reset()

但是实操发现,直接调用报错

pinia.js?v=0f025a7f:1058 Uncaught (in promise) Error: 🍍: Store "data" is built using the setup syntax and does not implement $reset(). at Proxy.$reset (pinia.js?v=0f025a7f:1058:13)

原因:Pinia 提供的 $reset 方法仅适用于使用 options 语法(即 state 选项)定义的 store,对于使用 setup 语法定义的 store不适用,需要手动实现状态重置功能。

三、解决方案

手动赋值每个状态不优雅,故考虑使用pinia的插件,为pinia扩展一个reset方法

  1. 创建pinia插件
// src/store/plugins/piniaResetPlugin.js
export function createResetPlugin() {return ({ store }) => {// 保存初始状态的副本const initialState = JSON.parse(JSON.stringify(store.$state))// 定义 reset 方法store.$reset = () => {store.$patch(initialState)}}
}
  1. 注册pinia插件
// src/main.js
import { createApp } from 'vue'
import { createPinia } from 'pinia'
import App from './App.vue'
import { createResetPlugin } from './store/plugins/piniaResetPlugin'const app = createApp(App)const pinia = createPinia()
// 注册插件
pinia.use(createResetPlugin())app.use(pinia)
app.mount('#app')
  1. 使用$reset方法
<template><button @click="handleLogout">Logout</button>
</template><script>
import { useDataStore } from '@/store/interface/data'
import { useAuthStore } from '@/store/auth' // 假设有一个 auth store 用于处理登录export default {setup() {const dataStore = useDataStore()const authStore = useAuthStore()const handleLogout = async () => {await authStore.logout()// 调用 reset 方法dataStore.$reset()// 其他登出逻辑this.$router.push('/login') // 例如,重定向到登录页}return {handleLogout}}
}
</script>

一个完整的插件开发,注册,使用的流程就完成啦

四、总结

通过创建一个适用于 setup 语法的 Pinia 插件,可以更优雅地为所有 stores 添加 reset 方法。这种方法确保状态重置功能在 setup 语法的 store 中也能正常工作。

http://www.yayakq.cn/news/144333/

相关文章:

  • 北京 网站设计飞沐js网站源码下载
  • 个人如何做网站软件wordpress演示地址转换短网址
  • html网站开发软件如何开发一个微信公众号
  • cn域名建设网站需要备案吗高端网站设计建设
  • 抓取的网站如何做seo哪些网站可以做简历
  • 做网站前期需要什么html网页完整代码作业简单
  • 网站备案是怎么回事电子商务平台
  • 贵阳网站设计找哪家怎么做网站的寄生
  • 南阳旅游网站建设现状开发区医院
  • 模型网站大全免费义乌外贸论坛
  • 桂林哪里学建设网站移动论坛网站模板免费下载
  • 摩托车专业网站怎么提交网站地图
  • 温州 网站建设公司wordpress更改文章宽度
  • 网站运营编辑做什么的linuxvps建站教程
  • 深圳有做网站公司如何免费做网站
  • 公司网站流程和费用上海公司黄页网站
  • 如何注册一家网站建设公司响应式网站建设原则
  • 深圳建网站兴田德润专业网页版梦幻西游山河画境龙王
  • 怎么在网站里给图片做超链接常州企业网站建设价格
  • 上海松江做网站的公司做网站公司哪个品牌好
  • 网页传奇新开网站镇网站制作价格
  • 互动类网站互动平台上市公司
  • 成都旅游视频南宁seo专员
  • 山东鸿泰建设集团有限公司网站杭州seo相关网站
  • 网页设计与网站建设+pdf上海cms建站
  • dedecms本地打开网站网站游戏制作开发
  • 简单的网站怎么做的阿里巴巴上做网站要多少钱
  • 公司做网站收费怎么咨询自己的网络服务商
  • 河南建设网站制作济南建设信息网站
  • 免费申请一个不花钱网站施工企业信用评价等级