rights.js 725 B

1234567891011121314151617181920212223242526
  1. import { defineStore } from "pinia";
  2. import { ref } from "vue";
  3. import { getUserLevelInfo } from "@/api/user";
  4. // 定义并导出 store
  5. export const useStoreRights = defineStore("rights", () => {
  6. // 用户权益
  7. const userBenefits = ref({});
  8. const getUserBenefits = async (id) => {
  9. try {
  10. const res = await getUserLevelInfo(id);
  11. userBenefits.value = res.data || { sold: 0, buy: 0 }; // 默认权益为0,避免NaN
  12. } catch (error) {
  13. console.error("获取用户权益失败:", error);
  14. userBenefits.value = { sold: 0, buy: 0 }; // 出错时默认权益为0
  15. }
  16. };
  17. // 4. 返回需要暴露的状态、计算属性、方法
  18. return {
  19. userBenefits,
  20. getUserBenefits,
  21. };
  22. });