安装
下载包
$ npm i -S tua-storage
# OR
$ yarn add tua-storage
tua-storage
是通过初始化时传入的 storageEngine
选项来区分不同的端。
小程序端
首先在 app.js
中进行实例初始化。
// app.js
import TuaStorage from 'tua-storage'
// 初始化时传入全局对象 wx
const tuaStorage = new TuaStorage({ storageEngine: wx })
App({
//...
// 将实例挂到全局对象上
globalData: { tuaStorage },
})
接着在各个页面中可以这样引入。
// some-page.js
// 获取应用实例
const app = getApp()
// 获取 tuaStorage 实例
const { tuaStorage } = app.globalData
Page({
someFn () {
return tuaStorage.save({ ... })
.then(console.log)
.catch(console.error)
},
async anotherFn () {
try {
const { code, data } = await tuaStorage.load({ ... })
// ...
} catch (e) {
console.error(e)
}
},
})
web 端
和小程序端大同小异。
import TuaStorage from 'tua-storage'
// 可以挂在全局对象 window 上,方便别的地方调用
window.tuaStorage = window.tuaStorage || new TuaStorage({
storageEngine: localStorage,
})
node 端
node 端可以传递 null,之后会将数据保存在内存中(其实就是存在了 object
中)。
import TuaStorage from 'tua-storage'
// 可以挂在全局对象 global 上,方便别的地方调用
global.tuaStorage = global.tuaStorage || new TuaStorage({
storageEngine: null,
})
React-Native 端
RN 端没得选,传 AsyncStorage
...
import TuaStorage from 'tua-storage'
import { AsyncStorage } from 'react-native'
// 可以挂在全局对象 global 上,方便别的地方调用
global.tuaStorage = global.tuaStorage || new TuaStorage({
storageEngine: null,
})
介绍 →