pinia 修改state
<template> <div @click="change"> 直接通过实例.就可以获取 {{ store.count }}---- {{ store.sex }} </div> </template> <script setup lang='ts'> import { useStore } from '../store' // defineStore返回的是个hook,需要实例化 const store = useStore() const change = () => { // 第一种方式,直接修改 // store.count++ // 第二种方式,通过patch的对象修改 // store.$patch({ count: 3 }) // 第三种方式,通过patch的函数修改 // store.$patch((state) => { // state.count = 3 // }) // 第四种方式,通过$state修改 // store.$state.count = 3 // 第五种方式,通过$state赋值会完全覆盖,且属性必须完全一致 // store.$state = { // count:4, // sex:'男' // } // 第六种方式,通过调用action的方式 // store.increment() store.updataCount(5) // 通过传参的方式 } </script> <style scoped lang='scss'> </style>
import {defineStore} from 'pinia' import {StoreName} from './store-name' // StoreName是id,用于区分不同的store,自定义即可 export const useStore = defineStore(StoreName.Test, { state: () => ({ count: 0, sex: '顶顶顶' }), getters: { }, actions: { increment() { this.count++ }, // 不可以写箭头函数,否则指向不正确 updataCount(count: number) { this.count = count } }, })
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2023-02-22 Vue3中使用JSX简明语法
2023-02-22 TS补充笔记