useCatalogue.js 991 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import {
  2. reactive,
  3. toRefs
  4. } from "vue";
  5. import {
  6. catchError
  7. } from "@/utils/common.js"
  8. import * as httpCatalogue from "@/api/catalogue.js"
  9. import cacheManager from "@/utils/cacheManager";
  10. import {
  11. onLoad
  12. } from "@dcloudio/uni-app";
  13. import {getUserIdentity} from "@/utils/common.js"
  14. export function useCatalogue() {
  15. const data = reactive({
  16. levelId: null,
  17. subjectId: null
  18. })
  19. const userCode = getUserIdentity();
  20. onLoad(({subjectId,levelId}) => {
  21. if (userCode !== 'Visitor') {
  22. const auth = cacheManager.get('auth');
  23. const { levelId:levelId, subjectId:subjectId } = auth
  24. data.subjectId = subjectId || null;
  25. data.levelId = levelId || null;
  26. } else {
  27. data.subjectId = subjectId || null;
  28. data.levelId = levelId || null;
  29. }
  30. });
  31. async function getCatalogue() {
  32. return await catchError(httpCatalogue.getCatalogue({
  33. subjectId: +data.subjectId,
  34. levelId: +data.levelId
  35. }));
  36. }
  37. return {
  38. ...toRefs(data),
  39. // 获取章节数据
  40. getCatalogue
  41. }
  42. }