初始化项目模板

This commit is contained in:
yangyao committed 2026-01-04 17:53:40 +08:00
1 parent 80fd6a1d4b
commit b3a69a1f27
69 files changed
+11088

No files matched your search

+83
View File
@@ -0,0 +1,83 @@
import {
ref,
reactive
} from 'vue';
import {
defineStore
} from 'pinia'
import {
parse,
stringify
} from 'zipson'
export const useCommon = defineStore(
'common',
() => {
const test = 'test'
return {
test
}
}, {
persist: {
paths: ['commonState'],
storage: {
getItem(key) {
return uni.getStorageSync(key)
},
setItem(key, value) {
uni.setStorageSync(key, value)
},
},
serializer: {
deserialize: parse,
serialize: stringify,
}
}
})
/*
页面内使用pinia
1、引用你定义的store实例
import { useUserStore } from '@/stores/user'
2、实例化useUserStore
const user = useUserStore()
3、引入 storeToRefs 用于 给实例的属性创建refs,即响应式
import { storeToRefs } from 'pinia'
例如:const {count} = storeToRefs(user)
count.value 此时为响应式
4、修改state 方式共两种 如下
user.count++
4-1、
// 带自动补全 ✨
user.$patch({ count: counter.count + 1 })
$patch()可批量修改state的属性值
例如:
批量修改
const pathState = () => {
store.$patch({
user: { name: 'ks', age: 20 },
});
};
其他操作state的方法如下:
替换State
const replaceState = () => {
store.$state.user = { age: 20, name: 'eee', sex: 'women' };
};
重置state的值
const reset = () => {
store.$reset();
};
4-2、
// 或使用 action 代替
user.increment()
*/