Javascript 当Graphql的返回查询为空时,如何在Nuxtjs中重定向
我对Nuxtjs和javascript世界非常陌生。我正在处理的Nuxtjs项目需要使用Graphql从后端获取数据(Strapi)。 目标是在Graphql返回空查询结果时重定向到homepage(index.vue)。 但是,当我使用router.push(“/”)时,它不起作用,如下代码所示 请注意,我正在尝试重定向结果块和挂载块。他们两个根本不起作用 请帮我指出我做错了什么。提前谢谢你的好意Javascript 当Graphql的返回查询为空时,如何在Nuxtjs中重定向,javascript,graphql,nuxt.js,apollo,Javascript,Graphql,Nuxt.js,Apollo,我对Nuxtjs和javascript世界非常陌生。我正在处理的Nuxtjs项目需要使用Graphql从后端获取数据(Strapi)。 目标是在Graphql返回空查询结果时重定向到homepage(index.vue)。 但是,当我使用router.push(“/”)时,它不起作用,如下代码所示 请注意,我正在尝试重定向结果块和挂载块。他们两个根本不起作用 请帮我指出我做错了什么。提前谢谢你的好意 <script> import getProfiletQuery from '~/a
<script>
import getProfiletQuery from '~/apollo/queries/profiles/profile'
export default {
data () {
return {
profiles: {
}
}
},
apollo: {
profiles: {
prefetch: true,
query: getProfiletQuery,
variables () {
return { user: this.$route.params.user }
},
result ({ data }) {
if (data.profiles.length === 0) {
console.log('it enters here!!!')
this.$router.push('/') //this is not working
}
}
}
},
mounted () {
console.log('this.profiles.length: ', this.profiles.length)
if (this.profiles.length === 0) {
this.$router.push('/')
}
}
}
</script>
从“~/apollo/queries/profiles/profile”导入getProfiletQuery
导出默认值{
数据(){
返回{
简介:{
}
}
},
阿波罗:{
简介:{
预回迁:对,
查询:getProfiletQuery,
变量(){
返回{user:this.$route.params.user}
},
结果({data}){
if(data.profiles.length==0){
console.log('它进入这里!!!')
此。$router.push('/')//此操作无效
}
}
}
},
挂载(){
log('this.profiles.length:',this.profiles.length)
if(this.profiles.length==0){
这是。$router.push(“/”)
}
}
}
如果您是JS新手,可能不应该使用Nuxt+Apollo。在这里跳了几步,如图所示:@kissu我完全同意你。但这项任务要求我这样做。我承认我完全糊涂了:(试着在挂载的中用这个来拨打阿波罗呼叫。$apollo
,也许这可以导航到下一页。