Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取数据时调用next()_Javascript_Laravel_Vue.js_Axios_Single Page Application - Fatal编程技术网

Javascript 获取数据时调用next()

Javascript 获取数据时调用next(),javascript,laravel,vue.js,axios,single-page-application,Javascript,Laravel,Vue.js,Axios,Single Page Application,我正在使用这个npm包,但是在获取数据时它会显示进度条 我想要实现的是,例如,当我单击某个产品时,我不想离开当前路线,直到ProductsShow组件中的数据被提取出来,然后进度条将完成并调用next()方法,前往ProductsShow组件的路线 有办法做到这一点吗?要检查我要前往的路由组件中的数据是否已获取,以便我可以完成进度条并调用next()方法是,要执行此操作,需要在目标组件中利用beforeRouteEnter 导出默认值{ 路由前(到、从、下一个){ get(“/data/i/n

我正在使用这个npm包,但是在获取数据时它会显示进度条

我想要实现的是,例如,当我单击某个产品时,我不想离开当前路线,直到
ProductsShow
组件中的数据被提取出来,然后进度条将完成并调用
next()
方法,前往
ProductsShow
组件的路线


有办法做到这一点吗?要检查我要前往的路由组件中的数据是否已获取,以便我可以完成进度条并调用
next()
方法是,要执行此操作,需要在目标组件中利用
beforeRouteEnter


导出默认值{
路由前(到、从、下一个){
get(“/data/i/need”)
.然后(功能(响应){
下一步(vm=>{
vm.myData=response.data//取决于数据的形状和目标组件
})
})
.catch(函数(错误){
next(false)//或重定向到错误页?
})
}
}

如果您的路线在参数中包含id,您可以在beforeRouteEnter中使用
to.params.myidValuer或任何您正在等待的信息来访问它?或者您正在等待的数据获取?你给Axios加了标签,这让我很惊讶。另外,一些代码可能会有所帮助。您在组件生命周期的何处触发此。$Progress.finish()
?您是否正在为您的
产品Show
组件进行导航卫士方面的其他工作?我正在等待获取数据。必须编辑标题我尝试在每次之前执行此操作,但没有成功。就像我需要做一些工作,在所有的组件,这是工作
<script>
export default {
  beforeRouteEnter(to, from, next) {
    axios.get('/data/i/need')
      .then(function(response) {
        next(vm => {
          vm.myData = response.data // depends on the shape of your data and your destination component
        })
      })
      .catch(function(error) {
        next(false)  // or redirect to an error page?
      })
  }
}
</script>