localStorage.js 811 B

123456789101112131415161718192021222324252627282930313233
  1. const PREFIX = '_sagacloud_admin_store_'
  2. const loaclStorage = window.localStorage
  3. export default {
  4. set(key, value, fn) {
  5. let _value = null
  6. try {
  7. _value = JSON.stringify(value)
  8. } catch (e) {
  9. _value = value
  10. }
  11. loaclStorage.setItem(PREFIX + key, _value)
  12. fn && fn()
  13. },
  14. get(key, fn) {
  15. if (!key) {
  16. return null
  17. }
  18. if (typeof key === 'object') {
  19. throw new Error('key不能是一个对象。')
  20. }
  21. var _value = loaclStorage.getItem(PREFIX + key)
  22. if (_value !== null) {
  23. try {
  24. return JSON.parse(_value)
  25. } catch (e) {}
  26. }
  27. return _value
  28. },
  29. remove(key) {
  30. loaclStorage.removeItem(PREFIX + key)
  31. }
  32. }