提交 0b166a4b 编写于 作者: fxy060608's avatar fxy060608

feat(app-plus-nvue): localStorage

上级 00a8f9f7
...@@ -18,8 +18,10 @@ if (process.env.UNI_SERVICE === 'legacy') { ...@@ -18,8 +18,10 @@ if (process.env.UNI_SERVICE === 'legacy') {
} else if (process.env.UNI_SERVICE === 'uni') { } else if (process.env.UNI_SERVICE === 'uni') {
input = 'src/platforms/app-plus/service/uni/index.js' input = 'src/platforms/app-plus/service/uni/index.js'
output.file = 'packages/uni-app-plus-nvue/dist/uni.js' output.file = 'packages/uni-app-plus-nvue/dist/uni.js'
output.banner = output.banner =
'export function createUniInstance(weex, plus, __uniConfig, __uniRoutes, UniServiceJSBridge, getApp, getCurrentPages){\n' `export function createUniInstance(weex, plus, __uniConfig, __uniRoutes, UniServiceJSBridge, getApp, getCurrentPages){
var localStorage = plus.storage
`
output.footer = '\n return uni$1 \n}' output.footer = '\n return uni$1 \n}'
} }
......
...@@ -677,7 +677,7 @@ let waiting; ...@@ -677,7 +677,7 @@ let waiting;
let waitingTimeout; let waitingTimeout;
let toast = false; let toast = false;
let toastTimeout; let toastTimeout;
// 此处设计不对
function initPopup (on, { function initPopup (on, {
plus plus
}) { }) {
......
export function createUniInstance(weex, plus, __uniConfig, __uniRoutes, UniServiceJSBridge, getApp, getCurrentPages){ export function createUniInstance(weex, plus, __uniConfig, __uniRoutes, UniServiceJSBridge, getApp, getCurrentPages){
var localStorage = plus.storage
const _toString = Object.prototype.toString; const _toString = Object.prototype.toString;
const hasOwnProperty = Object.prototype.hasOwnProperty; const hasOwnProperty = Object.prototype.hasOwnProperty;
...@@ -1855,7 +1856,7 @@ function wrapper (name, invokeMethod, extras) { ...@@ -1855,7 +1856,7 @@ function wrapper (name, invokeMethod, extras) {
} }
} }
// 尽早将 invokeCallbackHandler 挂在 UniServiceJSBridge 中 UniServiceJSBridge.publishHandler = UniServiceJSBridge.emit;
UniServiceJSBridge.invokeCallbackHandler = invokeCallbackHandler; UniServiceJSBridge.invokeCallbackHandler = invokeCallbackHandler;
function createCommonjsModule(fn, module) { function createCommonjsModule(fn, module) {
...@@ -2252,28 +2253,23 @@ function switchTab$1 (args) { ...@@ -2252,28 +2253,23 @@ function switchTab$1 (args) {
return onAppRoute('switchTab', args) return onAppRoute('switchTab', args)
} }
function getStorageHolder () {
return plus.storage
}
function setStorage$1 ({ function setStorage$1 ({
key, key,
data data
} = {}) { } = {}) {
const storageHolder = getStorageHolder();
const value = { const value = {
type: typeof data === 'object' ? 'object' : 'string', type: typeof data === 'object' ? 'object' : 'string',
data: data data: data
}; };
storageHolder.setItem(key, JSON.stringify(value)); localStorage.setItem(key, JSON.stringify(value));
const keyList = storageHolder.getItem('uni-storage-keys'); const keyList = localStorage.getItem('uni-storage-keys');
if (!keyList) { if (!keyList) {
storageHolder.setItem('uni-storage-keys', JSON.stringify([key])); localStorage.setItem('uni-storage-keys', JSON.stringify([key]));
} else { } else {
const keys = JSON.parse(keyList); const keys = JSON.parse(keyList);
if (keys.indexOf(key) < 0) { if (keys.indexOf(key) < 0) {
keys.push(key); keys.push(key);
storageHolder.setItem('uni-storage-keys', JSON.stringify(keys)); localStorage.setItem('uni-storage-keys', JSON.stringify(keys));
} }
} }
return { return {
...@@ -2291,7 +2287,7 @@ function setStorageSync$1 (key, data) { ...@@ -2291,7 +2287,7 @@ function setStorageSync$1 (key, data) {
function getStorage ({ function getStorage ({
key key
} = {}) { } = {}) {
const data = getStorageHolder().getItem(key); const data = localStorage.getItem(key);
return data ? { return data ? {
data: JSON.parse(data).data, data: JSON.parse(data).data,
errMsg: 'getStorage:ok' errMsg: 'getStorage:ok'
...@@ -2311,15 +2307,14 @@ function getStorageSync (key) { ...@@ -2311,15 +2307,14 @@ function getStorageSync (key) {
function removeStorage ({ function removeStorage ({
key key
} = {}) { } = {}) {
const storageHolder = getStorageHolder(); const keyList = localStorage.getItem('uni-storage-keys');
const keyList = storageHolder.getItem('uni-storage-keys');
if (keyList) { if (keyList) {
const keys = JSON.parse(keyList); const keys = JSON.parse(keyList);
const index = keys.indexOf(key); const index = keys.indexOf(key);
keys.splice(index, 1); keys.splice(index, 1);
storageHolder.setItem('uni-storage-keys', JSON.stringify(keys)); localStorage.setItem('uni-storage-keys', JSON.stringify(keys));
} }
storageHolder.removeItem(key); localStorage.removeItem(key);
return { return {
errMsg: 'removeStorage:ok' errMsg: 'removeStorage:ok'
} }
...@@ -2332,7 +2327,7 @@ function removeStorageSync (key) { ...@@ -2332,7 +2327,7 @@ function removeStorageSync (key) {
} }
function clearStorage () { function clearStorage () {
getStorageHolder().clear(); localStorage.clear();
return { return {
errMsg: 'clearStorage:ok' errMsg: 'clearStorage:ok'
} }
...@@ -2343,7 +2338,7 @@ function clearStorageSync () { ...@@ -2343,7 +2338,7 @@ function clearStorageSync () {
} }
function getStorageInfo () { // TODO 暂时先不做大小的转换 function getStorageInfo () { // TODO 暂时先不做大小的转换
const keyList = getStorageHolder().getItem('uni-storage-keys'); const keyList = localStorage.getItem('uni-storage-keys');
return keyList ? { return keyList ? {
keys: JSON.parse(keyList), keys: JSON.parse(keyList),
currentSize: 0, currentSize: 0,
......
function getStorageHolder () {
if (__PLATFORM__ === 'h5') {
return localStorage
}
return plus.storage
}
export function setStorage ({ export function setStorage ({
key, key,
data data
} = {}) { } = {}) {
const storageHolder = getStorageHolder()
const value = { const value = {
type: typeof data === 'object' ? 'object' : 'string', type: typeof data === 'object' ? 'object' : 'string',
data: data data: data
} }
storageHolder.setItem(key, JSON.stringify(value)) localStorage.setItem(key, JSON.stringify(value))
const keyList = storageHolder.getItem('uni-storage-keys') const keyList = localStorage.getItem('uni-storage-keys')
if (!keyList) { if (!keyList) {
storageHolder.setItem('uni-storage-keys', JSON.stringify([key])) localStorage.setItem('uni-storage-keys', JSON.stringify([key]))
} else { } else {
const keys = JSON.parse(keyList) const keys = JSON.parse(keyList)
if (keys.indexOf(key) < 0) { if (keys.indexOf(key) < 0) {
keys.push(key) keys.push(key)
storageHolder.setItem('uni-storage-keys', JSON.stringify(keys)) localStorage.setItem('uni-storage-keys', JSON.stringify(keys))
} }
} }
return { return {
...@@ -40,7 +32,7 @@ export function setStorageSync (key, data) { ...@@ -40,7 +32,7 @@ export function setStorageSync (key, data) {
export function getStorage ({ export function getStorage ({
key key
} = {}) { } = {}) {
const data = getStorageHolder().getItem(key) const data = localStorage.getItem(key)
return data ? { return data ? {
data: JSON.parse(data).data, data: JSON.parse(data).data,
errMsg: 'getStorage:ok' errMsg: 'getStorage:ok'
...@@ -60,15 +52,14 @@ export function getStorageSync (key) { ...@@ -60,15 +52,14 @@ export function getStorageSync (key) {
export function removeStorage ({ export function removeStorage ({
key key
} = {}) { } = {}) {
const storageHolder = getStorageHolder() const keyList = localStorage.getItem('uni-storage-keys')
const keyList = storageHolder.getItem('uni-storage-keys')
if (keyList) { if (keyList) {
const keys = JSON.parse(keyList) const keys = JSON.parse(keyList)
const index = keys.indexOf(key) const index = keys.indexOf(key)
keys.splice(index, 1) keys.splice(index, 1)
storageHolder.setItem('uni-storage-keys', JSON.stringify(keys)) localStorage.setItem('uni-storage-keys', JSON.stringify(keys))
} }
storageHolder.removeItem(key) localStorage.removeItem(key)
return { return {
errMsg: 'removeStorage:ok' errMsg: 'removeStorage:ok'
} }
...@@ -81,7 +72,7 @@ export function removeStorageSync (key) { ...@@ -81,7 +72,7 @@ export function removeStorageSync (key) {
} }
export function clearStorage () { export function clearStorage () {
getStorageHolder().clear() localStorage.clear()
return { return {
errMsg: 'clearStorage:ok' errMsg: 'clearStorage:ok'
} }
...@@ -92,7 +83,7 @@ export function clearStorageSync () { ...@@ -92,7 +83,7 @@ export function clearStorageSync () {
} }
export function getStorageInfo () { // TODO 暂时先不做大小的转换 export function getStorageInfo () { // TODO 暂时先不做大小的转换
const keyList = getStorageHolder().getItem('uni-storage-keys') const keyList = localStorage.getItem('uni-storage-keys')
return keyList ? { return keyList ? {
keys: JSON.parse(keyList), keys: JSON.parse(keyList),
currentSize: 0, currentSize: 0,
......
import { import {
invokeCallbackHandler invokeCallbackHandler
} from 'uni-helpers/api' } from 'uni-helpers/api'
// 尽早将 invokeCallbackHandler 挂在 UniServiceJSBridge 中
UniServiceJSBridge.publishHandler = UniServiceJSBridge.emit
UniServiceJSBridge.invokeCallbackHandler = invokeCallbackHandler UniServiceJSBridge.invokeCallbackHandler = invokeCallbackHandler
...@@ -2,7 +2,7 @@ let waiting ...@@ -2,7 +2,7 @@ let waiting
let waitingTimeout let waitingTimeout
let toast = false let toast = false
let toastTimeout let toastTimeout
// 此处设计不对
export default function initPopup (on, { export default function initPopup (on, {
plus plus
}) { }) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册