| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- import { defineStore } from "pinia";
- import { getUserInfo } from "@/api/user.js";
- import Cache from "@/utils/cache.js";
- import { USER_INFO,CITYINFO,TOKEN} from "@/config/cache.js";
- import { uniLogin } from "@/utils/util.js";
- export const useAppStore = defineStore("app", {
- state: () => {
- return {
- userInfo: Cache.get(USER_INFO) ? JSON.parse(Cache.get(USER_INFO)) : null,
- token: Cache.get(TOKEN) || null,
- agentId: '',//当前选择的智能体ID
- useBalance:false,//是否使用晓豆
- msgContent:'',//当前跳转过来带的问题
- moneyUnit:'AI豆',//默认晓豆
- title: "财税知识平台",//小程序名字
- statusBarHeight: 0,//状态栏高度
- navbarHeight: 0,//导航栏总高度
- bgDefaultImage:"https://fs.bjwdys.com/miniapp/bg-default.png?time="+Date.now(),//纯色背景图,带时间戳防止缓存
- };
- },
- getters: {
- $userInfo: (state) => state.userInfo,
- onShareAppMessageObj:(state) =>({
- title: "财税知识平台",
- path: `/pages/index/index?scene=inviteCode=${state.userInfo?.inviteCode || ''}`, // 分享路径
- })
- },
- // 也可以这样定义
- // state: () => ({ count: 0 })
- actions: {
- UPDATE_agentId(agentId) {
- this.agentId = agentId
- },
- UPDATE_msgContent(msgContent) {
- this.msgContent = msgContent
- },
- UPDATE_TOKEN(token) {
- this.token = token
- Cache.set(TOKEN, token);
- },
-
- LOGOUT() {
- this.token = undefined;
- this.userInfo = undefined;
- Cache.clear(USER_INFO);
- Cache.clear(TOKEN);
- },
- UPDATE_USERINFO(userInfo) {
- this.userInfo = userInfo;
- Cache.set(USER_INFO, userInfo);
- uniLogin();
- },
- async USERINFO(force) {
- try {
- const res = await getUserInfo();
- this.UPDATE_USERINFO(res.data);
- return res.data;
- } catch (e) {
- // 可以处理异常
- }
- },
- UPDATE_statusBarHeight(statusBarHeight) {
- this.statusBarHeight = statusBarHeight;
- // 导航栏总高度 = 状态栏高度 + 自定义导航内容高度(通常 44px)
- this.navbarHeight = statusBarHeight + 44;
- },
- }
- });
|