import Vue from "vue"; import $api from "@/request/api"; // 语言配置 import { cn } from "@/language/cn"; import { tw } from "@/language/tw"; import { en } from "@/language/en"; import { yn } from "@/language/yn"; import { kr } from "@/language/kr"; import { tl } from "@/language/tl"; import { In } from "@/language/in"; let userData = {}; try { userData = localStorage.getItem("userInfo"); userData = userData ? JSON.parse(userData) : {}; } catch (err) { console.log(err); } const state = { language: localStorage.getItem("language") || "cn", // 语言 lang: { cn, tw, en, yn, kr, tl, in: In }, // 用户信息 userInfo: userData || {}, apiUrl: "", sockUrl: "", gapi: "", h5: "", loginLogo: "", titlePng: "", title: "", customServiceUrl:"", telegramUrl:"", lineUrl:"", gameUrl:"", tripleUrl:"", loginType:'' }; const mutations = { // 更改 state 值 用于下面的 $state setState(state, payload) { if (payload.state) state[payload.state] = payload.value; }, // 设置配置 setConfig: (state, data) => { console.log(localStorage.getItem("loginType")) if (data.title) { Vue.prototype.$baseApi = { base: data.apiUrl, gapi: data.gapi, h5: data.h5, gameUrl: data.gameUrl, tripleUrl: data.tripleUrl }; document.title = data.title; Object.keys(data).forEach((v) => { if (v != "language") { state[v] = data[v]; } }); } // 设置默认语言 const language = localStorage.getItem("language"); if (!language) { state.language = data.language || "cn"; } state.loginType = localStorage.getItem("loginType") || '' }, updateLanguage: (state, data) => { state.language = data; localStorage.setItem("language", data); }, updateLoginType: (state, data) => { state.loginType = data; localStorage.setItem("loginType", data); }, updateUserInfo: (state, data) => { try { let userInfo = Object.assign(state.userInfo, { ...data, }); userInfo = JSON.stringify(userInfo); localStorage.setItem("userInfo", userInfo); state.userInfo = JSON.parse(userInfo); } catch (err) { console.log(err); } }, }; const actions = { // 更新用户信息 getUserInfo({ commit, state }) { $api .getUserInfo({ api_token: state.userInfo.api_token }) .then((res) => { if (res.Success == 1) { commit("updateUserInfo", res.Data); } }) .catch((err) => { console.log(err); }); }, // 退出登陆 logOut() {}, }; export default { namespaced: true, state, mutations, actions, };