第二章节 storage封装的 setItem出错

来源:2-11 storage二次封装

慕慕1545788

2021-05-07

图片描述

代码:
storage.js:

import config from './../config'
export default {
    setItem(key,val){
        let storage =this.getStorage();
        storage[key]=val;
        window.localStorage.setItem(config.namespace,stringify(storage));
    },
    getItem(key){
        return this.getStorage()[key];
    },
    getStorage(){
        return JSON.parse(window.localStorage.getItem(config.namespace)|| "{}");
    },
    clearItem(){
        let storage = this.getStorage()
        delete storage[key]
    },
    clearAll(){
        ndow.localStorage.clear()
    }
}

App.vue:

<template>
  <router-view></router-view>
</template>

<script>
   export default  {
     name : 'app',
     mounted(){
       this.$storage.setItem('name',"Tome")
     }
   }
</script>

<style>
 
</style>

main.js:

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import ElementPlus from 'element-plus'
import 'element-plus/lib/theme-chalk/index.css'
import request from './utils/request'
import storage from './utils/storage'

console.log("环境变量=>",import.meta.env)
const app=createApp(App);
app.config.globalProperties.$request=request;
app.config.globalProperties.$storage=storage;
app.use(router).use(ElementPlus).mount('#app')

写回答

4回答

qq_慕先生1026127

2021-09-20

你直接

stringify(storage)

应该是

JSON.stringify(storage)


0
0

慕后端9509069

2021-06-25

有解决吗,我是一样的错误

0
0

河畔一角

2021-05-08

建议断点调试一下,这种问题通常都比较容易调试出来,直接看代码很难看出来。

0
0

慕九州4451910

2021-05-08

app. vue的第九行,你去一层一层console. log,肯定找得到问题的

0
0

Vue3+ElementPlus+Koa2 全栈开发后台系统

从前端晋级到全栈,让你的未来发展有更多可能

1069 学习 · 580 问题

查看课程