Storage.clearItems
현재 미니앱이 저장한 모든 키를 비동기로 한 번에 삭제합니다. 호스트 앱(토스) 자체나 다른 미니앱의 데이터에는 영향을 주지 않습니다 — Storage는 미니앱 단위로 격리되어 있습니다.
devtools mock 환경에서는 브라우저의 localStorage에 저장된 __ait_storage: 프리픽스 키들만 지웁니다 — 앱이 직접 쓴 다른 localStorage 키는 그대로 남습니다.
비공식 문서
이 페이지는 커뮤니티가 작성한 설명입니다. SDK의 동작은 상위의 @apps-in-toss/web-framework 배포본을 기준으로 합니다.
시그니처
import { Storage } from '@apps-in-toss/web-framework';
declare const Storage: {
clearItems(): Promise<void>;
// ...overview 참고
};
파라미터
없음.
반환값
Promise<void>— 삭제가 완료되면 resolve. 저장된 키가 하나도 없어도 정상적으로 resolve 됩니다.
되돌릴 수 없습니다
삭제는 즉시 영구적으로 반영됩니다. "로그아웃" 같은 사용자 의도가 명확한 시점에만 호출하고, 부분 삭제로 충분하면 removeItem을 키별로 부르는 편이 안전합니다.
권한
권한이 필요하지 않습니다 — Storage 네임스페이스는 별도의 PermissionName에 바인딩되지 않습니다. 권한이 필요한 다른 네임스페이스의 일반적인 처리 흐름은 Guides — 권한 처리 패턴을 참고하세요.
예제
최소 예제
import { Storage } from '@apps-in-toss/web-framework';
await Storage.clearItems();
실전 예제 — "로그아웃" 처리에서 로컬 상태 비우기
import { Storage } from '@apps-in-toss/web-framework';
async function signOut() {
// 1. 서버 세션 무효화 (앱 자체 로직)
await fetch('/api/sign-out', { method: 'POST' });
// 2. 미니앱이 저장한 모든 로컬 상태 비우기
await Storage.clearItems();
// 3. 초기 화면으로 이동 (네비게이션 API는 별도)
}
직접 실행해 보기
sdk-example의 Storage 페이지에서 clearItems 카드를 실행해 결과를 확인할 수 있습니다.
관련 API
Storage.removeItem— 단일 키만 삭제합니 다.Storage.getItem— 저장된 값을 읽습니다.Storage.setItem— 값을 저장합니다.
관련 가이드
- Guides — 권한 처리 패턴 — 다른 네임스페이스의 권한 흐름 (참고용;
Storage는 권한이 필요하지 않습니다). - (작성 예정) Recipes — "사용자 설정 저장 패턴 (직렬화·마이그레이션·기본값)"
외부 참조
@apps-in-toss/web-framework— 상위 SDK 패키지. 실제 export는 내부적으로@apps-in-toss/web-bridge에서 가져옵니다.- 표준 Web API 대응:
Storage.clear(localStorage) — 동기 API라는 점, 그리고 표준은 origin 단위로 모든 키를 지우는 데 비해 SDK는 미니앱 격리 범위로 한정된다는 점이 다릅니다.