pinia $reset、$subscribe、$onAction
<template> <div @click="[store.count++,store.increment()]"> 直接通过实例.就可以获取 {{ store.count }}---- {{ store.sex }} </div> <div @click="reset">恢复</div> </template> <script setup lang='ts'> import { useStore } from '../store' const store = useStore() // $reset是恢复到state定义的初始值 const reset = () => { store.$reset() } // 监听state数据的变化就会触发,arg是store实例,state是当前的state store.$subscribe((arg,state) => { console.log(arg,state) },{ detached: true, // 组件销毁时仍然监听 // 跟watch的一样 deep: true, // 深度监听s immediate: true, // 立即执行 flush: 'sync' // 同步执行 }) // 监听action的触发,arg参数包含store的实例、after、onError、传参 store.$onAction((arg) => { console.log(arg.args) // 调用时候的传参 arg.after(()=>{ // 执行完action后的回调,watechEfferct的副作用函数相反,这是之后执行的 console.log('执行完action后的回调') }) arg.onError((err) => { // action执行出错的回调 console.log(err) }) },true) // 组件销毁时仍然监听 </script> <style scoped lang='scss'> </style>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2023-02-22 Vue3中使用JSX简明语法
2023-02-22 TS补充笔记