sessionstorage

聊一聊前端存储那些事儿

若如初见. 提交于 2019-11-30 00:12:19
欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码): http://my.oschina.net/MrHou/blog?catalog=477313&temp=1466755903794 ##1 老朋友cookie ####1.1 是什么? cookie是什么就用不着我多说了吧,可是有同学会问了,这也算存储?当然算,它也可以存东西不是,而且它会在用户访问服务器的时候被带上。但是,笔者在这里建议,不要使用过量,因为cookie在每次请求的时候都会被带上。你总不想每次访问自己网站接口或者文件的时候都带上一堆可能用不到的信息把?这样会增大请求包的大小。 ####1.2 访问限制性 众所周知,cookie可以设置访问域。即,如果你设置cookie的时候,设定了cookie的访问域名为一个顶级域名,则可以达到几个子域名共享cookie的效果。如:腾讯网与微信网页版共享了pac_uid(如图1.2.1与图1.2.2)。 图1.2.1 图1.2.2 访问的限制在种下cookie的时候指定。所以,我们可以设定cookie的访问域名限制(当然,不能跨域啦)。 有些重要信息,如用户的唯一标识,建议给这些cookie字段加上HttpOnly标识。加上了这个标识的话,我们的客户端js是无法读到与写入加了标识的cookie字段的,这样非常安全。如果有不了解的读者

layui首页

北城余情 提交于 2019-11-29 18:19:06
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <title>小区物业管理系统</title> <!--<meta name="renderer" content="webkit">--> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"> <link rel="shortcut icon" href="../layuiadmin/layui/images/favicon.ico" /> <link rel="stylesheet" href="../layuiadmin/layui/css/layui.css" media="all"> <link rel="stylesheet" href="../layuiadmin/style

storage

ε祈祈猫儿з 提交于 2019-11-29 17:57:26
location storage:保存到浏览器本地存储中,永久保存(不自主删除的情况下),同一域名下可访问; session storage:用于本地存储一个会话(session)中的数据,这些数据只有在同一个会话中的页面才能访问并且当会话结束后数据也随之销毁。因此sessionStorage不是一种持久化的本地存储,仅仅是会话级别的存储。   添加session sessionStorage.setItem("key", "value");   获取 session var value = sessionStorage.getItem("key"); 来源: https://www.cnblogs.com/lee1-w/p/11525279.html

How do I bind event to sessionStorage?

天涯浪子 提交于 2019-11-29 17:20:48
问题 I can successfully bind an event for a change to localStorage (using jquery): $(window).bind('storage', function(e) { alert('change'); }); localStorage.setItem('someItem', 'someValue'); If I use sessionStorage, the event will NOT fire: $(window).bind('storage', function(e) { alert('change'); }); sessionStorage.setItem('someItem', 'someValue'); Why is this? 回答1: That is the way it's meant to be I think. From the spec (emphasis added): When the setItem() , removeItem() , and clear() methods are

首页

谁都会走 提交于 2019-11-29 08:14:11
左侧导航栏 修改密码 退出 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <title>小区物业管理系统</title> <!--<meta name="renderer" content="webkit">--> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"> <link rel="shortcut icon" href="../layuiadmin/layui/images/favicon.ico"/> <link rel="stylesheet" href="../layuiadmin/layui/css/layui.css" media="all"> <link rel="stylesheet" href="..

设置scrollTop无效

▼魔方 西西 提交于 2019-11-29 05:17:25
问题描述:页面刷新滚动条不返回到最初到位置而是返回之前浏览的位置 要点:通过sessionStorage设置获取刷新页面前的滚动条位置 <div id="outterBox" style="width:100%;height:100%;background:yellow;overflow: auto"> <div id="innerBox" style="background:red">aaaa</div> </div> innerBox的高度由内容撑开且通过后端接口获取数据 ... // let scrollToTop = Number(window.sessionStorage.getItem('top')) ... getRebuildDataResultService(updateId, centerId).then(resp => { if (resp.errorcode == 100) { let respLog = resp.data && resp.data[0] && resp.data[0].log // respLog = respLog.join('<br/>') logs += '<div style="font-size:14px;font-weight:normal;">' logs += respLog logs += '</div>' let

vue页面刷新数据丢失问题

岁酱吖の 提交于 2019-11-29 04:49:30
参考: https://blog.csdn.net/aliven1/article/details/80743470 https://blog.csdn.net/liang377122210/article/details/78880438 https://blog.csdn.net/goodaxuan/article/details/82113123 main.js文件中: var store = new Vuex.Store({ state: { userMsg: ' ' //要保存的数据 }, getters: { }, mutations: { set_userMsg(state, data) { state.userMsg = data } }, actions: { }, modules: {} }) var data = {id:1, name:'王五'}; this.$store.commit('set_userMsg', data); //修改保存数据 App.vue中: created() { //在页面加载时读取sessionStorage里的状态信息 if(sessionStorage.getItem("userMsg")) { this.$store.replaceState(Object.assign({}, this.$store.state,

Vue详情页回列表页保存原数据与位置。

爱⌒轻易说出口 提交于 2019-11-29 01:35:52
列表页关键代码 mounted() { //非从详情页返回时正常加载数据 if (!this.$route.meta.isBack) { //执行加载数据的方法 //重新加载页面 } else { // this.onFetching = true; this.curPage = sessionStorage.getItem('curPage'); //存储分页第几页,用于返回列表页继续可以分页 ... } //执行完初始化isBack this.$route.meta.isBack = false }, beforeRouteLeave(to, from, next) { if(to.name == 'bbs_detail') { //跳转为详情页,就保存当前滚动的页数 sessionStorage.setItem('curPage', this.curPage); } else { //跳转为非详情页,滚动的页数归1 sessionStorage.setItem('curPage', 1); } next(); }, main.js // 返回定位 router.afterEach((to,from) => { let path = to.path; //判断需要定位的路由地址 if(path == '/bbs'){ //获取储存起来的位置 let scrollTop =

session,cookie,sessionStorage,localStorage的区别及应用场景

旧街凉风 提交于 2019-11-29 00:44:44
浏览器的缓存机制提供了可以将用户数据存储在客户端上的方式,可以利用cookie,session等跟服务端进行数据交互。 一、cookie和session cookie和session都是用来跟踪浏览器用户身份的会话方式。 区别: 1、保持状态:cookie保存在 浏览器端 ,session保存在 服务器端 2、使用方式: (1)cookie机制:如果不在浏览器中设置过期时间,cookie被保存在 内存 中,生命周期随浏览器的关闭而结束,这种cookie简称会话cookie。如果在浏览器中设置了cookie的过期时间,cookie被保存在 硬盘 中,关闭浏览器后,cookie数据仍然存在,直到过期时间结束才消失。 Cookie是服务器发给客户端的特殊信息,cookie是以文本的方式保存在客户端,每次请求时都带上它 (2)session机制:当服务器收到请求需要创建session对象时,首先会检查客户端请求中是否包含sessionid。如果有sessionid,服务器将根据该id返回对应session对象。如果客户端请求中没有sessionid,服务器会创建新的session对象,并把sessionid在本次响应中返回给客户端。 通常使用cookie方式存储sessionid到客户端,在交互中浏览器按照规则将sessionid发送给服务器。如果用户禁用cookie,则要使用URL重写

Vue - 组件

余生颓废 提交于 2019-11-28 20:55:33
目录 Vue成员获取 Vue原义指令 Vue循环指令 todolist案列 Vue分隔符 Vue计算属性成员 Vue监听属性 Vue组件 根组件 局部组件 全局组件 组件复用的数据隔离 组件信息交互 - 父传子 组件信息交互 - 子传父 Vue成员获取 获取自定义成员和methods时,用 $options.成员 来获取, <div id="app"> <h1 @click="btnClick">{{ msg }}</h1> <p>{{$data}}</p> <p>{{$options}}</p> <p>{{$options.myarr}}</p> </div> <script> let app = new Vue({ el: '#app', data: { msg: '数据' }, methods: { btnClick() { console.log(this.msg) } }, myarr: [1, 2, 3, 4] }); console.log(app.msg); console.log(app.$data); console.log(app.$options.methods); console.log(app.$options.myarr) </script> Vue原义指令 <div class="app"> <p v-pre> <!--v-pre的内部解除vue控制