yindongqi 846b3f1660 refactor: 移除未使用的依赖并优化代码结构
- 移除 `pinia-plugin-persistedstate` 依赖
- 统一按钮背景色为 `#52ac41`
- 删除未使用的 `main2.js` 和 `store2.js` 文件
- 优化登录页面的验证逻辑和样式
- 修复部分组件的条件渲染问题
2025-04-11 09:14:07 +08:00

107 lines
2.3 KiB
JavaScript

import { defineStore } from 'pinia'
import cookie from '@/utils/cookie'
import { navigateTo } from '@/utils/router'
export const useMainStore = defineStore('main', {
state: () => ({
store: {},
cart: [],
orderType: 'takein',
address: {},
addresses: {},
member: {},
openid: "",
token: "",
lang: 'zh-cn',
cookieKey: 'YSESSID=yshop-e4dk4o2utr3c0n95tp42p745ai',
location: {},
mycoupon: {}
}),
getters: {
isLogin(state) {
return Object.keys(state.member).length > 0
}
},
actions: {
DEL_COUPON() {
this.mycoupon = {}
},
SET_COUPON(coupon) {
this.mycoupon = coupon
},
SET_ORDER_TYPE(type) {
this.orderType = type
},
SET_MEMBER(member) {
this.member = member
cookie.set('userinfo', member)
},
SET_ADDRESS(address) {
this.address = address
},
SET_ADDRESSES(addresses) {
this.addresses = addresses
},
SET_STORE(store) {
this.store = store
},
SET_CART(cart) {
this.cart = cart
},
REMOVE_CART() {
this.cart = []
},
setCookie(provider) {
uni.setStorage({
key: 'cookieKey',
data: provider
});
},
SET_LOCATION(location) {
this.location = location;
},
SET_OPENID(openid) {
this.openid = openid;
},
SET_TOKEN(token) {
this.token = token;
cookie.set('accessToken', token)
},
setAccessToken(user) {
cookie.set('accessToken', user)
},
setSelectAddress(id) {
console.log('--> % setSelectAddress % id:\n', id)
this.selectAddress = this.address.filter(item => item.id == id)[0]
},
init() {
let accessToken = cookie.get('accessToken')
if (accessToken) {
// 这里可以添加获取用户信息等逻辑
}
return null
},
logout() {
this.member = {}
this.address = {}
this.addresses = {}
navigateTo('/pages/login/login')
},
},
persist: {
enabled: true,
strategies: [
{
storage: {
setItem(key, value) {
uni.setStorageSync(key, value)
},
getItem(key) {
return uni.getStorageSync(key)
},
},
paths: ['member', 'token'] // 需要持久化的字段
}
]
}
})