使用nuxt开发项目时候 碰到跳转新页面session丢失的问题
项目顶部有个菜单导航栏,就是使用一些普通的标签h1等做出来的,这些标签都对应不同的路由,一级菜单都是用h1写的,鼠标悬浮时候会有二级菜单,问题就是出在二级菜单上了,因为二级菜单是使用 nuxt-link写的
页面大概结构是这样
<h1 :class="item.url==fullPath ? 'wid_he_100 actived' : 'wid_he_100'" @click="goHref(item.url)">{{item.mainTitle}}</h1> //一级菜单
<i class="down" v-if="item.childList.length>0"></i> //下拉icon
<ul class="zi_list" v-if="item.childList.length>0">
<li class="zi_list_li" v-for="(listItem,idx) in item.childList" :key="idx"> 二级菜单
<nuxt-link :to="'/'+item.url" target="_blank" class="wid_he_100">{{listItem.mainTitle}}</nuxt-link>
</li>
</ul>
主标题h1写是因为seo要求 h1的点击跳转就使用js window.open 新窗口了 最开始nuxt-link的跳转 是绑定to路由地址 和target="_blank"属性
但是都可以实现跳转但是问题是 登录以后 会在session中存用户信息,window.open的页面打开以后,session中的东西都还在 nuxt-link打开的session就是空的,很费解session在相同域名下不是共享的吗?
费了好大劲也没有找到原因 后来改写二级的菜单跳转方式 也改成使用js window.open来打开新窗口
<li class="zi_list_li" v-for="(listItem,idx) in item.childList" :key="idx" @click="goHref(listItem.url)"> 二级菜单
{{ listItem.mainTitle }}
</li>
这样就把问题解决了 但是还是很费解nuxt-link的跳转为什么不能共享session 可能需要看源码才能找到答案吧,小白一枚,希望大佬多多指点