nuxt vue router afterEach guard

Chr*_*ris 3 javascript vue.js nuxt.js

如何设置在nuxt中路由更改后执行的afterEach处理程序?中间件可以用作beforeEach,但我找不到实现afterEach钩子的方法.

Gom*_*mah 16

您可以创建如下插件:

// plugins/after-each.js:
export default async ({ app }) => {

  app.router.afterEach((to, from) => {
    // Do something
  });

}
Run Code Online (Sandbox Code Playgroud)

然后参考nuxt.config.js:

plugins: [ { src: '~/plugins/after-each.js', mode: 'client' } ]
Run Code Online (Sandbox Code Playgroud)

注意:由于Nuxt.js 2.4 mode已作为plugins指定插件类型的选项引入,因此可能的值为:clientserver.ssr: falsemode: 'client'在下一个主要版本中进行调整和弃用.