【问题标题】:Vue - Nuxt - How to call a middleware on a layout?Vue - Nuxt - 如何在布局上调用中间件?
【发布时间】:2021-02-19 07:01:59
【问题描述】:

我在我的 nuxt 应用程序上创建了一个用于身份验证的中间件,我想在布局中调用它。 问题是,我这样称呼它:

export default {
  
  middleware: 'auth',

它返回给我以下警告:

callback-based asyncData, fetch or middleware calls are deprecated. Please switch to promises or async/await syntax

我是前端领域的新手,我进行了搜索,但无法找到/理解如何在我的中间件调用中实现这种 async/await 语法。你能帮助我吗? 提前致谢。

【问题讨论】:

  • 我猜你在中间件文件夹中有一个名为 auth.js 的文件。在里面你导出一个函数 `export default async function(){ /** custom login return ''; **/}
  • aync/await 对此没有帮助

标签: javascript vue.js async-await frontend nuxt.js


【解决方案1】:

遇到了类似的问题。我也使用middleware: ['lang'],如果我没有更改代码中的任何内容,我遇到了这样的错误并且很长时间无法理解为什么会发生这种情况。原来在lang.js我误收到了第二个参数req

export default async function ({ isHMR, app, store }, req) {
}

只有函数 servermiddleware 可以接受多个参数

module.exports = function (req, res, next) {

【讨论】:

    猜你喜欢
    • 2017-08-19
    • 2021-06-18
    • 2022-11-03
    • 2020-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-20
    • 2021-09-04
    相关资源
    最近更新 更多