vue 在其他js里如何根据router.currentRoute去获取调用当前页面的方法
时间: 2024-10-11 10:05:26 浏览: 30
浅谈vue-router路由切换 组件重用挖下的坑
5星 · 资源好评率100%
Vue.js 中,要在其他 JavaScript 文件中访问当前路由信息,通常需要使用 Vue 的实例或者通过注入(Injection)的方式。如果你已经将 Vue Router 的实例挂载到了全局,你可以这样做:
```javascript
// 先确保已在 main.js 或者某个 Vue 实例化的地方引入了 Vue Router
import VueRouter from 'vue-router';
const router = new VueRouter(); // 创建实例
// 然后在其他文件中,假设有个 Vue 实例 app
app.$router; // 这样就可以直接获取到 router 对象
// 如果你想在非 Vue 组件中获取当前路由,可以这样做
const currentRoute = app.$route; // 当前路由信息
console.log(currentRoute.name); // 获取路由名称等属性
// 或者,如果你需要在非 Vue 组件中监听路由变化,可以使用 `watch` 或者 `beforeEach` 钩子
router.watch('$route', function (to, from) {
console.log('路由改变:', to);
});
// 如果你在非 Vue 组件的函数中需要调用,可以直接使用 router的导航方法
router.push('/your-path'); // 跳转到新的路径
```
阅读全文