@joebobstevedave/ngx-cache-fs-storage v8.0.0
@ngx-cache/fs-storage

Fs storage for ngx-cache (server platform)
Please support this project by simply putting a Github star. Share this library with friends on Twitter and everywhere else you can.
NOTICE
This 7.x.x branch is intented to work with
Angular v7.x.x. If you're developing on a later release of Angular thanv7.x.x, then you should probably choose the appropriate version of this library by visiting the master branch.
Table of contents:
- Prerequisites
- Getting started
- Settings - Setting up
ServerCacheModuleto useFsStorageStaticLoader - Credits
- License
Prerequisites
This library depends on Angular v6.0.0. Older versions contain outdated dependencies, might produce errors.
Also, please ensure that you are using Typescript v2.7.2 or higher.
Getting started
Installation
You can install @ngx-cache/fs-storage using npm
npm install @ngx-cache/fs-storage --saveNote: You should have already installed [@ngx-cache/core] and [@ngx-cache/platform-server].
Examples
- ng-seed/universal is an officially maintained seed project, showcasing common patterns and best practices for
@ngx-cache/fs-storage.
Related packages
The following packages may be used in conjunction with @ngx-cache/fs-storage:
Adding @ngx-cache/fs-storage to your project (SystemJS)
Add map for @ngx-cache/fs-storage in your systemjs.config
'@ngx-cache/fs-storage': 'node_modules/@ngx-cache/fs-storage/bundles/fs-storage.umd.min.js'app.module configuration
- Repeat the
app.module configurationsteps at @ngx-cache/platform-server. - Import
FsStorageStaticLoaderusing the mapping'@ngx-cache/fs-storage', and proceed to settings.
Settings
You can call the forRoot static method using FsStorageStaticLoader. By default, it is configured to have the storagePath
as './.temp/cache', and storageQuota is set to 5 MB.
You can customize this behavior (and ofc other settings) by supplying storagePath and storageQuota to
FsStorageStaticLoader.
The following examples show the use of an exported function (instead of an inline function) for AoT compilation.
Setting up ServerCacheModule to use FsStorageStaticLoader
app.server.module.ts
...
import { CacheService, CACHE, STORAGE } from '@ngx-cache/core';
import { ServerCacheModule, FsCacheService } from '@ngx-cache/platform-server';
import { FsStorageLoader, FsStorageStaticLoader, FsStorageService } from '@ngx-cache/fs-storage';
...
export function fsStorageFactory(): FsStorageLoader {
return new FsStorageStaticLoader({
path: './.temp/cache',
quota: 5 * 1024 * 1024
});
}
@NgModule({
declarations: [
AppComponent,
...
],
...
imports: [
...
ServerStateTransferModule.forRoot(),
ServerCacheModule.forRoot([
{
provide: CACHE,
useClass: FsCacheService
},
{
provide: STORAGE,
useClass: FsStorageService
},
{
provide: FsStorageLoader,
useFactory: (fsStorageFactory)
}
]),
],
...
bootstrap: [AppComponent]
})
export class AppServerModule {
}FsStorageStaticLoader has one parameter:
- providedSettings:
FsStorageSettings: fs storage settings- path:
string: storage path for cache files (by default,'./.temp/cache') - quota:
number: disk quota for cache files (by default,5242880)
- path:
:+1: Yeah!
@ngx-cache/fs-storagewill now provide storage settings to @ngx-cache/platform-server.
Credits
- node-localstorage: A drop-in substitute for the browser native localStorage API that runs on node.js
License
The MIT License (MIT)
Copyright (c) 2018 Burak Tasci
6 years ago