import { defineStore } from "pinia";
import { request } from "sunadmin-core";

export const useTestStore = defineStore("test", {
    //状态数据存储
    state: () => {
        return {
            name: "你好,我是sunAdmin",
        };
    },

    //完全等同于state的computed计算属性
    getters: {
        shuffledName: (state) => {
            //打乱name的顺序
            return state.name
                .split("")
                .sort(() => Math.random() - 0.5)
                .join("");
        },
    },
    //相当于组件中的 method
    //可以同步也可以异步,可以调用其他store,可以调用api,可以调用其他store的actions
    actions: {
        getTestData() {
            console.log("🔄 [SunAdmin] 获取数据");
            this.name = "loading...";
            //在这里学习一下如何调用sunadmin的网络请求方法
            return request.get("https://api.kekc.cn/api/yiyan").then((res) => {
                this.name = res;
            });
        },
    },
});
