首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

vue 获取跳转上一页组件信息

项目中有一需求,需要根据不同的页面路径url跳转进行不同的操作,首先需要获得上一页面的url,利用 beforeRouteEnter 这个钩子中的from参数获得之前url的信息,然后给 next 传递回调来访问当前组件的实例...操作代码为: beforeRouteEnter (to, from, next) { console.log(to) console.log(from) if (from.name...屏幕快照 2018-11-28 下午5.47.06.png 查看代码,写法没有错误啊,最终查看官方文档,发现官方文档中也有说明: beforeRouteEnter 守卫不能访问 this,因为守卫在导航确认前被调用...可以这样更该下代码如图: data(){ return { newPath:'' } }, beforeRouteEnter(to, from, next)...} }) }, methods: { isYJLogin(){ localStorage.setItem('account', this.code) } } 注:beforeRouteEnter

1.3K20

Vue router 应用问题记录

路由守卫的应用 根据路由守卫绑定的位置不同,有下面三种路由守卫 全局守卫 beforeEach/beforeResolve/afterEach 路由独享守卫 beforeEnter 组件内的守卫 beforeRouteEnter...在被激活的组件里调用 beforeRouteEnter。 调用全局的 beforeResolve 守卫 (2.5+)。 导航被确认。 调用全局的 afterEach 钩子。 触发 DOM 更新。...用创建好的实例调用 beforeRouteEnter 守卫中传给 next 的回调函数。...beforeRouteEnter:获取当前页面的前一个页面的信息,比如我们在登录页,登录后要重定向到前一个页面,就可以通过这个钩子获取。注意:这里, 不!能!...beforeRouteEnter (to, from, next) { next(vm => { // 通过 `vm` 访问组件实例 }) } 其他几个路由守卫,我这边不常用,有补充的观众欢迎留下评论

59210

多路由复用页面组件问题

new-detail/:id, 和 /edit-detail/:id 这四个不同的url,注册的是同一个页面组件 在场景(1)中,切换页面,只调用beforeRouteUpdate钩子函数,不调用beforeRouteEnter...、mounted等,可以监听到$route,并获取到激活组件里面的数据,不会错乱 在场景(2)中,切换页面,调用beforeRouteEnter钩子函数,不调用created、mounted等生命周期钩子...全局前置钩子) beforeRouteUpdate(如果是重用组件,则调用) 可以访问组件实例 this beforeEnter(路由配置里,路由独享的) 解析异步路由组件(如果有) beforeRouteEnter...beforeRouteEnter (调用守卫中传给 next 的回调函数,创建好的组件实例会作为回调函数的参数传入。

97010

面试官:说说你对keep-alive的理解是什么?怎么缓存当前的组件?缓存后怎么更新?

则匹配它的局部注册名称 (父组件 components 选项的键值),匿名组件不能被匹配 设置了 keep-alive 缓存的组件,会多出两个生命周期钩子(activated与deactivated): 首次进入组件时:beforeRouteEnter...> beforeCreate > created> mounted > activated > ... ... > beforeRouteLeave > deactivated 再次进入组件时:beforeRouteEnter...this.keys中 此时再判断this.keys中缓存组件的数量是否超过了设置的最大缓存数量值this.max,如果超过了,则把第一个缓存组件删掉 四、思考题:缓存后如何获取数据 解决方案可以有以下两种: beforeRouteEnter...actived beforeRouteEnter 每次组件渲染的时候,都会执行beforeRouteEnter beforeRouteEnter(to, from, next){ next(vm

2.6K21
领券