工具类
const storage = {
set(key, value) {
localStorage.setItem(key, value)
},
get(key) {
return localStorage.getItem(key)
},
remove(key) {
localStorage.removeItem(key)
}
}
export default storage
应用
新增表单意外退出时,缓存表单数据
mounted () {
if(this.$route.query.operationType === "add") {
const device_info = storage.get("device_info") || ''
if (device_info !== '') {
this.formData = JSON.parse(device_info)
}
}
if(this.$route.query.operationType === "update") {
......
}
},
destroyed () {
if(this.$route.query.operationType === "add") {
if(!this.submitFlag){
storage.set("device_info", JSON.stringify(this.formData))
}
}
},
onSubmit () {
this.submitFlag = true
storage.remove("device_info")
},
浏览器调试位置
API
- setItem
- getItem
- removeItem
- clear
总结
- 允许在浏览器中存储 key/value 对的数据
- localStorage 用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去删除。
- localStorage 属性是只读的。
- localStorage也遵循同源策略。
- localStorage 只支持 string 类型的存储。