根据业务需求,进入页面先取 sessionStorage,在页面离开的时候,需要保存数据到 sessionStorage 里边,然后跳转到下个页面,进入到下个页面之后,就取 sessionStorage 里边的数据
比如后端需要的数据格式
{ settings:{ content: '这里是父组件需要保存的' dataset: '子组件保存的内容' } }复制代码
父组件 和 子组件 同时 要 beforeDestroy 离开之前 保存数据,跳转到 A 页面, 进入 A 页面取 sessionStorage 里边的内容接着编辑,但是 数据是取到了,内容总是 子组件保存的内容, 父组件没有保存成功。
问题是需要让他们有先后保存的概念, 所以用到了异步 setTimeout进行保存 子组件的内容
beforeDestroy () { setTimeout (() =>{ sessionStorage.setItem("streamJobEntity", JSON.stringify(data)); }, 0) },复制代码