ng7-storage is an Angular service for browser session storage management. It provides a simple API to store, retrieve, and clear session-based data, with optional encryption for additional security.
-
Store data in session storage
-
Optional encryption/decryption using base64 encoding
-
Error handling for unsupported browsers and missing keys
-
Angular service for easy integration into Angular projects
To install the package, use npm:
npm install ng7-storage --save
After installing the package, you can import the NgStorageService
into your Angular components or services to store, retrieve, and remove data from session storage.
To begin, import the service into your Angular component or service:
import { NgStorageService } from 'ng7-storage';
export class ExampleComponent {
constructor(private storageService: NgStorageService) {}
storeData() {
// Store with optional encryption
this.storageService.setData("user", { name: "John Doe", age: 30 }, true);
}
}
export class ExampleComponent {
constructor(private storageService: NgStorageService) {}
getData() {
// Retrieve with optional decryption
const userData = this.storageService.getData("user", true);
console.log("Retrieved data:", userData);
}
}
export class ExampleComponent {
constructor(private storageService: NgStorageService) {}
clearData() {
// Remove specific data
this.storageService.removeData('user');
// Or clear all data
this.storageService.removeAll();
}
}
-
The
NgStorageService
throws an error if the browser does not support session storage. -
An error is thrown if a key is invalid or missing when storing data.
-
setData(key: string, value: any, encrypt?: boolean): boolean
Stores data under the specified key in session storage with optional encryption.
-
getData(key: string, decrypt?: boolean): any
Retrieves data from session storage with optional decryption.
-
removeData(key: string): void
Removes the data associated with the specified key.
-
removeAll(): void
Clears all session storage data.
License
This package is licensed under the MIT License. See the license file for more details.
Edison Augusthy 💻 |