You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
977 B
53 lines
977 B
var dtime = '_deadtime';
|
|
/**
|
|
* @param {Object} k key
|
|
* @param {Object} v value
|
|
* @param {Object} t 秒
|
|
*
|
|
*/
|
|
function put(k, v, t) {
|
|
uni.setStorageSync(k,v);
|
|
var seconds = parseInt(t);
|
|
|
|
if (seconds > 0) {
|
|
var timestamp = Date.parse(new Date());
|
|
timestamp = timestamp / 1000 + seconds;
|
|
uni.setStorageSync(k + dtime, timestamp + "");
|
|
} else {
|
|
uni.removeStorageSync(k + dtime);
|
|
}
|
|
}
|
|
function get(k, def) {
|
|
var deadtime = parseInt(uni.getStorageSync(k + dtime));
|
|
if (deadtime) {
|
|
if (parseInt(deadtime) < Date.parse(new Date()) / 1000) {
|
|
if (def) {
|
|
return def;
|
|
} else {
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
var res = uni.getStorageSync(k);
|
|
if (res) {
|
|
return res;
|
|
} else {
|
|
return def;
|
|
}
|
|
}
|
|
|
|
function remove(k) {
|
|
uni.removeStorageSync(k);
|
|
uni.removeStorageSync(k + dtime);
|
|
}
|
|
|
|
function clear() {
|
|
uni.clearStorageSync();
|
|
}
|
|
|
|
module.exports = {
|
|
put: put,
|
|
get: get,
|
|
remove: remove,
|
|
clear: clear
|
|
}; |