| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import { getStorage, removeStorage, setStorage } from "../storage";
- export interface ShareConfig {
- title: string,
- imageUrl: string,
- query: string,
- share_ext : string //服务端需要拼接的参数
- }
- const STORAGE_KEY = "shareConfig";
- const DEFAULT_CONFIG: ShareConfig = {
- title: "",
- imageUrl: "",
- query: "",
- share_ext : ""
- }
- class ShareConfigModel {
- private static instance: ShareConfigModel | null = null;
- private data: ShareConfig;
- private constructor() {
- this.data = getStorage<ShareConfig>(STORAGE_KEY, DEFAULT_CONFIG) ?? DEFAULT_CONFIG;
- }
- static getInstance(): ShareConfigModel {
- if (!ShareConfigModel.instance) {
- ShareConfigModel.instance = new ShareConfigModel();
- }
- return ShareConfigModel.instance;
- }
- get(): ShareConfig {
- return this.data;
- }
- save(config: ShareConfig): boolean {
- this.data = config;
- return setStorage(STORAGE_KEY, config);
- }
- clear(): boolean {
- this.data = { ...DEFAULT_CONFIG };
- return removeStorage(STORAGE_KEY);
- }
- }
- export default ShareConfigModel;
|