中間件可使您的自定義的函數在渲染頁面以前運行ios
全部的中間件都必須放置在middleware/
目錄下。文件名將做爲中間件的名稱(如:middleware/auth
將成爲中間件auth
)。
中間件收到上下文做爲第一個參數︰git
export default function (context) { context.userAgent = context.isServer ? context.req.headers['user-agent'] : navigator.userAgent }
中間件將按照此順序在序列中執行:github
nuxt.config.js
axios
匹配的佈局api
匹配的頁面異步
中間件能夠是異步的,僅返回一個Promise
或者使用第二個callback
返回值:middleware/stats.js
函數
import axios from 'axios' export default function ({ route }) { return axios.post('http://my-stats-api.com', { url: route.fullPath }) }
而後,在nuxt.config.js
,佈局或者頁面中,配置middleware
參數nuxt.config.js
佈局
module.exports = { router: { middleware: 'stats' } }
中間件stats
將在每次路由改變時被調用。
想了解中間件的例子,請移步example-auth0post
鄭重聲明!英文極差,純屬看不懂文檔本身整理,翻譯若有問題請各位大神指教。若有不服,你來打我呀?url