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.0.1 to 1.0.2

8

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

@@ -15,3 +15,5 @@ "scripts": {

"indexedDB",
"storage"
"storage",
"localStorage",
"yux"
],

@@ -18,0 +20,0 @@ "author": "XboxYan",

# yux-storage
yux-storage 是一个基于 HTML5 [IndexedDB](https://developer.mozilla.org/zh-CN/docs/Web/API/IndexedDB_API) 封装的 Web 数据本地离线存储库。
yux-storage 是一个基于 HTML5 [IndexedDB](https://developer.mozilla.org/zh-CN/docs/Web/API/IndexedDB_API) 封装的 Web 本地数据离线存储库。

@@ -8,4 +8,4 @@

1. 使用类似 [localStorage API](https://developer.mozilla.org/zh-CN/docs/Web/API/Window/localStorage), 无需考虑 IndexedDB 的概念,上手无压力。
1. 支持回调和 [Promises](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise) 两种方式,各凭所愿。
1. 使用类似 [localStorage API](https://developer.mozilla.org/zh-CN/docs/Web/API/Window/localStorage), 无需考虑 IndexedDB 的复杂概念,上手无压力。
1. 支持回调和 [Promise](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise) 两种方式,各凭所愿。
1. 非常轻量,100 行左右的源码,压缩后更小。

@@ -32,3 +32,3 @@

```cmd
npm install yux-storage
npm i yux-storage
```

@@ -138,3 +138,2 @@

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

@@ -173,3 +172,3 @@ type: "text/plain",

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

@@ -191,6 +190,8 @@ *示例*

根据 key 的索引获取其名
根据 key 的索引获取键的名称。
> 有些鸡肋的方法,很多时候我们不知道键的索引。
*示例*
```js

@@ -209,9 +210,18 @@ yuxStorage.key(2).then(function(keyName) {

获取数据仓库中所有的 key。
获取数据仓库中所有的 key,返回一个数组。
> localStorage API 并没有这个方法,但比上面的 key 要有用的多。
*示例*
```js
yuxStorage.keys().then(function(keyNames) {
// key 名
console.log(keyNames);
})
```
## 兼容性
不支持 `IE`
现代浏览器,不支持 `IE`

@@ -228,3 +238,3 @@ > 兼容性取决于 [indexedDB](https://caniuse.com/?search=indexedDB) 和 [Promise](https://caniuse.com/?search=Promise)

这时,只需要将方法放在 `new yuxDB()` 的回调或者 Promise
这时,只需要将方法放在 `new yuxDB()` 的回调或者 Promise 后续流程

@@ -256,3 +266,3 @@ ```js

> yuxDB 是整个库的构造函数,new YuxDB() 返回的是一个 Promise 对象, 初始完成后返回的 yuxStorage 才具备以上 API 的各种方法
> yuxDB 是整个库的构造函数,new yuxDB() 返回的是一个 Promise 对象, 初始完成后回调生成的 yuxStorage 才具备以上 API 的各种方法

@@ -262,1 +272,3 @@ ## 联系我

有相关问题或者意见可与我联系 yanwenbin@yuewen.com
^ ^

@@ -0,1 +1,7 @@

/**
* @yux-storage.js
* @author xboxyan
* Created: 20-11-10
*/
class yuxDB {

@@ -22,3 +28,3 @@

request.onerror = (event) => {
reject(event)
reject(event);
}

@@ -30,3 +36,3 @@ })

return new Promise((resolve, reject) => {
const request = this.db.transaction([this.objectStoreName], 'readwrite').objectStore(this.objectStoreName).put(value, key);
const request = this.db.transaction(this.objectStoreName, 'readwrite').objectStore(this.objectStoreName).put(value, key);
request.onsuccess = (event) => {

@@ -39,3 +45,3 @@ if (successCallback && typeof successCallback === 'function') {

request.onerror = (event) => {
reject(event)
reject(event);
}

@@ -47,3 +53,3 @@ })

return new Promise((resolve, reject) => {
const request = this.db.transaction([this.objectStoreName]).objectStore(this.objectStoreName).get(key);
const request = this.db.transaction(this.objectStoreName).objectStore(this.objectStoreName).get(key);
request.onsuccess = (event) => {

@@ -56,3 +62,3 @@ if (successCallback && typeof successCallback === 'function') {

request.onerror = (event) => {
reject(event)
reject(event);
}

@@ -64,3 +70,3 @@ })

return new Promise((resolve, reject) => {
const request = this.db.transaction([this.objectStoreName], 'readwrite').objectStore(this.objectStoreName).delete(key);
const request = this.db.transaction(this.objectStoreName, 'readwrite').objectStore(this.objectStoreName).delete(key);
request.onsuccess = (event) => {

@@ -73,3 +79,3 @@ if (successCallback && typeof successCallback === 'function') {

request.onerror = (event) => {
reject(event)
reject(event);
}

@@ -89,3 +95,3 @@ })

request.onerror = (event) => {
reject(event)
reject(event);
}

@@ -100,8 +106,8 @@ })

if (successCallback && typeof successCallback === 'function') {
successCallback(request.result || null);
successCallback(request.result || []);
}
resolve(request.result);
resolve(request.result || []);
};
request.onerror = (event) => {
reject(event)
reject(event);
}

@@ -108,0 +114,0 @@ })

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