You are browsing Nuxt 2 docs. Go to Nuxt 3 docs, or learn more about Nuxt 2 Long Term Support.


Translated page Contents of this page might be outdated.

A propriedade middleware

Definir o intermediário para uma página específica da aplicação.


  • Tipo: String ou Array ou Function
    • Itens: String ou Function

Intermediário nomeado

Você pode criar intermediário nomeado ao criar um ficheiro dentro do diretório middleware/, o nome do ficheiro será o nome do intermediário.

middleware/authenticated.js
export default function ({ store, redirect }) {
  // Se o usuário não estiver autenticado
  if (!store.state.authenticated) {
    return redirect('/login')
  }
}
pages/secret.vue
<template>
  <h1>Secret page</h1>
</template>

<script>
  export default {
    middleware: 'authenticated'
  }
</script>

Intermediário anónimo

Se você precisar usar um intermediário apenas para uma página específica, você pode usar diretamente uma função para isso (ou um arranjo de funções):

pages/secret.vue
<template>
  <h1>Secret page</h1>
</template>

<script>
  export default {
    middleware({ store, redirect }) {
      // Se o usuário não estiver autenticado
      if (!store.state.authenticated) {
        return redirect('/login')
      }
    }
  }
</script>