settings.ts 795 B

1234567891011121314151617181920212223242526272829303132333435
  1. import { defineStore } from "pinia";
  2. import { type setType, store, getConfig } from "../utils";
  3. export const useSettingStore = defineStore("pure-setting", {
  4. state: (): setType => ({
  5. title: getConfig().Title,
  6. fixedHeader: getConfig().FixedHeader,
  7. hiddenSideBar: getConfig().HiddenSideBar
  8. }),
  9. getters: {
  10. getTitle(state) {
  11. return state.title;
  12. },
  13. getFixedHeader(state) {
  14. return state.fixedHeader;
  15. },
  16. getHiddenSideBar(state) {
  17. return state.hiddenSideBar;
  18. }
  19. },
  20. actions: {
  21. CHANGE_SETTING({ key, value }) {
  22. if (Reflect.has(this, key)) {
  23. this[key] = value;
  24. }
  25. },
  26. changeSetting(data) {
  27. this.CHANGE_SETTING(data);
  28. }
  29. }
  30. });
  31. export function useSettingStoreHook() {
  32. return useSettingStore(store);
  33. }