From d1448cb0ef10f358bb7bddb4e1ec268515e0b787 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 15 七月 2025 11:46:57 +0800
Subject: [PATCH] 项目初始化

---
 utils/storage.js |   86 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 86 insertions(+), 0 deletions(-)

diff --git a/utils/storage.js b/utils/storage.js
new file mode 100644
index 0000000..e3c7802
--- /dev/null
+++ b/utils/storage.js
@@ -0,0 +1,86 @@
+/**  
+ * 缂撳瓨鏁版嵁浼樺寲  
+ * const storage = require('@/utils/storage');  
+ * import storage from '@/utils/storage'  
+ * 浣跨敤鏂规硶 銆�  
+ *     涓�銆佽缃紦瀛�  
+ *         string    storage.set('k', 'string浣犲ソ鍟�');  
+ *         json      storage.set('k', { "b": "3" }, 2);  
+ *         array     storage.set('k', [1, 2, 3]);  
+ *         boolean   storage.set('k', true);  
+ *     浜屻�佽鍙栫紦瀛�  
+ *         榛樿鍊�    storage.get('k')  
+ *         string    storage.get('k', '浣犲ソ')  
+ *         json      storage.get('k', { "a": "1" })  
+ *     涓夈�佺Щ闄�/娓呯悊    
+ *         绉婚櫎: storage.remove('k');  
+ *         娓呯悊锛歴torage.clear();   
+ * 銆�  
+ * @type {String}  
+ */
+
+const postfix = '_expiry' // 缂撳瓨鏈夋晥鏈熷悗缂�   
+
+module.exports = {
+
+  /**  
+   * 璁剧疆缂撳瓨   
+   * @param  {[type]} k [閿悕]  
+   * @param  {[type]} v [閿�糫  
+   * @param  {[type]} t [鏃堕棿銆佸崟浣嶇]  
+   */
+  set(k, v, t) {
+    uni.setStorageSync(k, v)
+    const seconds = parseInt(t)
+    if (seconds > 0) {
+      let timestamp = Date.parse(new Date())
+      timestamp = timestamp / 1000 + seconds
+      uni.setStorageSync(k + postfix, timestamp + '')
+    } else {
+      uni.removeStorageSync(k + postfix)
+    }
+  },
+
+  /**  
+   * 鑾峰彇缂撳瓨   
+   * @param  {[type]} k   [閿悕]  
+   * @param  {[type]} def [鑾峰彇涓虹┖鏃堕粯璁  
+   */
+  get(k, def) {
+    const deadtime = parseInt(uni.getStorageSync(k + postfix))
+    if (deadtime) {
+      if (parseInt(deadtime) < Date.parse(new Date()) / 1000) {
+        if (def) {
+          return def
+        } else {
+          return false
+        }
+      }
+    }
+    const res = uni.getStorageSync(k)
+    if (res) {
+      return res
+    }
+    if (def == undefined || def == "") {
+      def = false
+    }
+    return def
+  },
+
+  /**
+   * 鍒犻櫎鎸囧畾缂撳瓨
+   * @param {Object} k
+   */
+  remove(k) {
+    uni.removeStorageSync(k)
+    uni.removeStorageSync(k + postfix)
+  },
+
+  /**  
+   * 娓呯悊鎵�鏈夌紦瀛�  
+   * @return {[type]} [description]  
+   */
+  clear() {
+    uni.clearStorageSync()
+  }
+}

--
Gitblit v1.9.3