如何在nuxt.js中编写全局路由器函数

时间:2017-08-04 14:33:30

标签: vue.js vue-router nuxt.js

我正在将Nu.js与Nuxt.js一起使用,但我在路由器的功能方面遇到了问题。

在纯Vue中,我可以这样写<img src="http://your ip adress/images/testimage.png" width="500" height="308" />

main.js

如何在nuxt.js中做同样的事情?我找不到像val route = new Router({ routes:{ [...] } }) route.beforeEach(to,from,next){ //do something to validate } 这样的文件。

另外,我所知道的是处理main.js文件夹来实现路由器,我无法设置重定向路径

请帮助,thx:)

2 个答案:

答案 0 :(得分:7)

您可以为Nuxt

创建一个插件

创建一个plugins/route.js文件:

export default ({ app }) => {
   // Every time the route changes (fired on initialization too)
   app.router.afterEach((to, from) => {
     //do something to validate
   }
}

并更新您的nuxt.config.js文件:

plugins: ['~/plugins/route']

有关Nuxt插件的更多详细信息:https://nuxtjs.org/guide/plugins

答案 1 :(得分:0)

如果仍然有人感兴趣,可以在nuxt.config.js中设置全局中间件,如下所示:

router: { middleware: ['foo'] },

然后在您的middleware/foo.js中做任何事情...

export default function({ route, from, store, redirect }) {}