Appearance
Storage API
POS 플러그인에서 로컬 데이터를 저장하고 관리하는 기능을 제공합니다. 데이터베이스를 사용하지 않고도 간단한 데이터 저장이 가능합니다.
주의사항
- 저장 가능한 데이터 타입은 문자열(string)만 지원합니다.
- 객체나 배열을 저장하려면 JSON.stringify()를 사용하여 문자열로 변환해야 합니다.
Methods
get
지정된 키에 해당하는 값을 조회합니다.
ts
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';
/**
* 저장된 데이터 조회
* @param key 조회할 데이터의 키
* @returns 저장된 값 또는 null
*/
const value = await posPluginSdk.storage.get('key');
// JSON 데이터 조회 예시
const jsonData = await posPluginSdk.storage.get('userSettings');
if (jsonData) {
const settings = JSON.parse(jsonData);
console.log('사용자 설정:', settings);
}set
지정된 키에 값을 저장합니다.
ts
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';
/**
* 데이터 저장
* @param key 저장할 데이터의 키
* @param value 저장할 값 (문자열)
*/
await posPluginSdk.storage.set('key', 'value');
// JSON 데이터 저장 예시
const settings = {
theme: 'dark',
language: 'ko',
notifications: true
};
await posPluginSdk.storage.set('userSettings', JSON.stringify(settings));del
지정된 키에 해당하는 값을 삭제합니다.
ts
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';
/**
* 데이터 삭제
* @param key 삭제할 데이터의 키
*/
await posPluginSdk.storage.del('key');사용 예시
사용자 설정 관리
ts
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';
class UserSettings {
private static readonly STORAGE_KEY = 'user_settings';
// 설정 조회
static async getSettings() {
const data = await posPluginSdk.storage.get(this.STORAGE_KEY);
return data ? JSON.parse(data) : null;
}
// 설정 저장
static async saveSettings(settings: any) {
await posPluginSdk.storage.set(this.STORAGE_KEY, JSON.stringify(settings));
}
// 설정 삭제
static async clearSettings() {
await posPluginSdk.storage.del(this.STORAGE_KEY);
}
}
// 사용 예시
async function manageSettings() {
// 설정 저장
await UserSettings.saveSettings({
theme: 'dark',
notifications: true
});
// 설정 조회
const settings = await UserSettings.getSettings();
console.log('현재 설정:', settings);
// 설정 삭제
await UserSettings.clearSettings();
}