用户首选项(Preferences)读取

//1写入

onWindowStageCreate(windowStage: window.WindowStage): void {

  // Main window is created, set main page for this ability

  hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onWindowStageCreate');

  preferencesUtil.init(this.context)

  preferencesUtil.put('MineList',MineList)

}

//2读取

@Entry

@ComponentV2

struct Index {

  @Local list: MineModel[] = []

  @Local str: string = ''

  aboutToAppear(): void {

    this.list = preferencesUtil.get('MineList') as MineModel[]

  }

}

//3 新建PreferencesUtil

import { preferences } from "@kit.ArkData";

import { common } from "@kit.AbilityKit";

import { MineModel } from "../MineModel";

class PreferencesUtil {

  dataPreferences: preferences.Preferences | null = null;

  static instance: PreferencesUtil

  constructor() {

}

  static getInstance() {

    if (!PreferencesUtil.instance) {

      PreferencesUtil.instance = new PreferencesUtil()

    }

    return PreferencesUtil.instance

  }

  init(context: common.UIAbilityContext,) {

    let options: preferences.Options = { name: 'myStore', storageType: preferences.StorageType.GSKV };

    try {

      this.dataPreferences = preferences.getPreferencesSync(context, options);

    } catch (error) {

      // TODO: Implement error handling.

    }

}

  put(k: string, v: MineModel[]) {

    this.dataPreferences?.putSync(k, v);

    this.dataPreferences?.flush()

  }

  get(k: string) {

    return this.dataPreferences?.getSync(k, '')

  }

  des(k:string){

    this.dataPreferences?.deleteSync(k)

    this.dataPreferences?.flush()

  }

}

export const preferencesUtil = PreferencesUtil.getInstance()

// export type { PreferencesUtil }

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容