storage.js 900 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. var dtime = '_deadtime'
  2. function put (k, v, t) {
  3. swan.setStorageSync(k, v)
  4. var seconds = parseInt(t)
  5. if (seconds > 0) {
  6. var timestamp = Date.parse(new Date())
  7. timestamp = timestamp / 1000 + seconds
  8. swan.setStorageSync(k + dtime, timestamp + '')
  9. } else {
  10. swan.removeStorageSync(k + dtime)
  11. }
  12. }
  13. function get (k, def) {
  14. var deadtime = parseInt(swan.getStorageSync(k + dtime))
  15. if (deadtime) {
  16. if (parseInt(deadtime) < Date.parse(new Date()) / 1000) {
  17. if (def) {
  18. return def
  19. } else {
  20. return
  21. }
  22. }
  23. }
  24. var res = swan.getStorageSync(k)
  25. if (res) {
  26. return res
  27. } else {
  28. return def
  29. }
  30. }
  31. function remove (k) {
  32. swan.removeStorageSync(k)
  33. swan.removeStorageSync(k + dtime)
  34. }
  35. function clear () {
  36. swan.clearStorageSync()
  37. }
  38. const storage = {
  39. put: put,
  40. get: get,
  41. remove: remove,
  42. clear: clear
  43. }
  44. module.exports = storage