- 在多个工具类中添加私有构造函数,防止实例化 -这种设计模式确保了工具类的静态方法和属性的正确使用 - 受影响的主要类包括: - AlgorithmHelper - AppStorageHelper - LogHelper - PreferencesHelper - SZYXLocalStorageHelper - SZYXLocalStorageKeys - TimeHelper - ToolsHelper - ToolsHelperForTS - ValidatorHelper - WindowHelper - XWebHelper
41 行
1.1 KiB
Plaintext
41 行
1.1 KiB
Plaintext
import preferences from '@ohos.data.preferences';
|
|
|
|
export class PreferencesHelper {
|
|
private constructor() {
|
|
}
|
|
|
|
public static async put(key: string, value: preferences.ValueType | undefined | null) {
|
|
|
|
const pref = await preferences.getPreferences(getContext(), 'PreferencesHelper')
|
|
// 写入数据
|
|
if (value !== undefined && value !== null) {
|
|
await pref.put(key, value)
|
|
} else {
|
|
await pref.delete(key)
|
|
}
|
|
// 刷盘
|
|
await pref.flush()
|
|
}
|
|
|
|
public static async get(key: string): Promise<preferences.ValueType> {
|
|
return new Promise(async (resolve, reject) => {
|
|
|
|
const pref = await preferences.getPreferences(getContext(), 'PreferencesHelper')
|
|
pref.get(key, undefined).then((r1: preferences.ValueType) => {
|
|
resolve(r1)
|
|
})
|
|
})
|
|
|
|
}
|
|
|
|
public static async delete(key: string): Promise<void> {
|
|
return new Promise(async (resolve, reject) => {
|
|
|
|
const pref = await preferences.getPreferences(getContext(), 'PreferencesHelper')
|
|
pref.delete(key).then(() => {
|
|
resolve()
|
|
})
|
|
})
|
|
|
|
}
|
|
} |