Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

yux-storage

Package Overview
Dependencies
Maintainers
1
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

yux-storage - npm Package Compare versions

Comparing version 1.1.0 to 1.1.1

2

package.json
{
"name": "yux-storage",
"version": "1.1.0",
"version": "1.1.1",
"description": "yux-storage 是一个基于 HTML5 IndexedDB 封装的 Web 本地数据离线存储库",

@@ -5,0 +5,0 @@ "main": "yux-storage.js",

@@ -54,6 +54,10 @@ # yux-storage

// 回调函数
yuxStorage.getItem('key',doSomethingElse)
yuxStorage.getItem('key',function(err,value){
if (err) {
console.log('出错了')
}
})
// 同样支持promise
yuxStorage.getItem('key').then(doSomethingElse)
yuxStorage.setItem('key').then(doSomethingElse)

@@ -65,4 +69,2 @@ // 如果你的环境支持async,那么

> 如果出现报错,可查看下面的[注意事项](#注意事项)
## API

@@ -80,2 +82,3 @@

> 所有回调函数的第一个参数为**错误标识**,如果为 `true`,说明出错

@@ -96,3 +99,3 @@ *示例*

// 回调版本:
yuxStorage.getItem('somekey', function(value) {
yuxStorage.getItem('somekey', function(err,value) {
// 当离线仓库中的值被载入时,此处代码运行

@@ -148,2 +151,3 @@ console.log(value);

// 还可以存储 file 文件
const file = new File(["foo"], "foo.txt", {

@@ -182,3 +186,3 @@ type: "text/plain",

> 小心使用,本质就是遍历,然后执行 REMOVEITEM
> 其实就是遍历,然后执行 REMOVEITEM

@@ -200,11 +204,9 @@ *示例*

根据 key 的索引获取键的名称。
根据 key 的索引获取其名
> 有些鸡肋的方法,很多时候我们不知道键的索引。
*示例*
```js
yuxStorage.key(2).then(function(keyName) {
// key名
// key 名
console.log(keyName);

@@ -220,62 +222,15 @@ })

获取数据仓库中所有的 key,返回一个数组。
获取数据仓库中所有的 key。
> localStorage API 并没有这个方法,但比上面的 key 要有用的多。
*示例*
```js
yuxStorage.keys().then(function(keyNames) {
// 所有的key名
console.log(keyNames);
})
```
## 兼容性
现代浏览器,不支持 `IE`
不支持 `IE`
> 兼容性取决于 [indexedDB](https://caniuse.com/?search=indexedDB) 和 [Promise](https://caniuse.com/?search=Promise)
## 注意事项
默认情况下,内部会暴露一个全局变量 yuxStorage,由于 indexedDB 的打开或者创建都是异步的,如果在页面加载后立即调用以上 API,可能会出现以下报错
```js
Uncaught ReferenceError: yuxStorage is not defined
```
这时,只需要将方法放在 `new yuxDB()` 的回调或者 Promise 后续流程就可以了
```js
new yuxDB().then(function(yuxStorage){
// 初始化完成
yuxStorage.getItem('somekey')
})
// async
yuxStorage = await new yuxDB();
// 初始化完成
yuxStorage.getItem('somekey')
// 回调方式
new yuxDB(function(yuxStorage){
// 初始化完成
yuxStorage.getItem('somekey')
})
```
如果是 import 导入,这需要将 yuxDB 导出
```js
import yuxDB from 'yux-storage'
```
> yuxDB 是整个库的构造函数,new yuxDB() 返回的是一个 Promise 对象, 初始完成后回调生成的 yuxStorage 才具备以上 API 的各种方法
## 联系我
有相关问题或者意见可与我联系 yanwenbin@yuewen.com
^ ^
有相关问题或者意见可与我联系 yanwenbin@yuewen.com
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc