vue嵌套路由跳转后父级动态数据被清空,请问如何处理?
clockin主页面代码,页面跳转后主页面上的动态数据都不能正常显示。
<template>
<div class="body">
<div class="main">
<div :span="8" class="headimgurl">
<img :src="userinfo.headimgurl" width="100" height="100" />
</div>
<div>
<div class="nickname">{{userinfo.nickname}}</div>
<div class="info">积分:{{userinfo.point}} 排名:{{userinfo.rank}}</div>
</div>
<div class="rules">
<nuxt-link :to="{name:'clockin-rules'}" style="color:rgb(150, 48, 45)">活动规则</nuxt-link>
<nuxt-link :to="{name:'clockin-awards'}" style="color:rgb(150, 48, 45)">获奖记录</nuxt-link>
<nuxt-link :to="{name:'clockin-record'}" style="color:rgb(150, 48, 45)">打卡记录</nuxt-link>
</div>
<div class="content">
<nuxt-child keep-alive></nuxt-child>
</div>
</div>
</div>
</template>
<script>
import axios from "axios";
export default {
data() {
return {
userinfo: {}
};
},
mounted() {
axios
.get("http://api.xxx.cn/t/get_userinfo", {
params: {
timestamp: Date.now()
}
})
.then(response => {
this.userinfo = response.data;
});
},
methods: {}
};
</script>
clockin主页面
clockin/record嵌套页面
在clockin-record页面this.$parent.userinfo
可以拿到正常数据
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看你使用了nuxt.js 应该是服务端渲染吧,那么你的请求应该在asyncData这个方法里面调用。
附上官方文档 asyncdata