flat-local-storage v1.0.0
flat-local-storage
The best third party JS|TS library scaffold.
Characteristics
- Coded in ES6+ or TypeScript, easily compile and generate production code
- Supports multi environment, including default browsers, Node, AMD, CMD, Webpack, Rollup, Fis and so on.
- Integrated jsmini
Note: When export and export default are not used at the same time, there is the option to
turn on legacy mode. Under legacy mode, the module system can be compatible with IE6-8. For more information on legacy mode,
please see rollup supplemental file.
Compatibility
Unit tests guarantee support on the following environment:
| IE | CH | FF | SF | OP | IOS | Android | Node |
|---|---|---|---|---|---|---|---|
| 6+ | 29+ | 55+ | 9+ | 50+ | 9+ | 4+ | 4+ |
Note: Compiling code depend on ES5, so you need import es5-shim to compatible with
IE6-8, here is a demo
Directory
├── demo - Using demo
├── dist - Compiler output code
├── doc - Project documents
├── src - Source code directory
├── test - Unit tests
├── CHANGELOG.md - Change log
└── TODO.md - Planned featuresInstall
Using npm, download and install the code.
$ npm install --save flat-local-storageFor node environment:
var storage = require('flat-local-storage');For webpack or similar environment:
import storage from 'flat-local-storage';For requirejs environment:
requirejs(['node_modules/flat-local-storage/dist/index.aio.js'], function (storage) {
// do something...
})For browser environment:
<script src="node_modules/flat-local-storage/dist/index.aio.js"></script>Basic Usage
Initialization
storage.init({ name: 'NAME', version: '1.0.0' })
Set and Get Item
Set and get a value of type string
storage.setItem('subkey', 'the string')storage.getItem('subkey')
// expect to return 'the string'Set and get a value of type json object
storage.setItem('subkey', {
a: {
b: {
c: 123,
d: '789',
}
}
})storage.getItem('subkey')
/**
expect to return {
a: {
b: {
c: 123,
d: '789',
}
}
}
*/Set and get a value of type json array
storage.setItem('subkey', [{
a: 1,
b: {
c: '2',
d: [{
g: 'c'
}]
}
}])storage.getItem('subkey')
/**
expect to return {
a: 1,
b: {
c: '2',
d: [{
g: 'c'
}]
}
}
*/Set and get a value of type number
storage.setItem('subkey', 1)storage.getItem('subkey')
/**
expect to return 1
*/Set and get a value of type null
storage.setItem('subkey', null)storage.getItem('subkey')
/**
expect to return null
*/Set and get a value of type undefined
storage.setItem('subkey', undefined)storage.getItem('subkey')
/**
expect to return undefined
*/removeItem
storage.removeItem('subkey')clear
storage.removeItem('subkey')Contribution Guide
For the first time to run, you need to install dependencies firstly.
$ npm installTo build the project:
$ npm run buildTo run unit tests:
$ npm testNote: The browser environment needs to be tested manually under
test/browser
Modify the version number in package.json, modify the version number in README.md, modify the CHANGELOG.md, and then release the new version.
$ npm run releasePublish the new version to NPM.
$ npm publishContributors
Change Log
TODO
4 years ago