Nuxt.js - 在 asyncData 方法中尝试在失败的等待调用中抛出 404 时出现“未定义错误”

Lov*_*ock 2 try-catch vue.js nuxt.js

今晚开始使用 Nuxt.js 并模拟博客数据,但遇到不存在的数据问题。

查看单个博客文章时,这是我的 asyncData 方法:

async asyncData({ params }) {
    try {
        const post = await axios.get(
            `https://jsonplaceholder.typicode.com/posts/${params.id}`
        )

        return {
            post: post.data
        }
    } catch (err) {
        error({ statusCode: 404, message: 'Post not found' })
    }
}
Run Code Online (Sandbox Code Playgroud)

当访问有效 ID 并返回 200 错误时,一切正常,但是当端点返回 404 时,它告诉我“错误未定义”

我只能找到有关使用 promise catch 方法执行此错误处理的信息,如下所示:https : //nuxtjs.org/guide/async-data/#handling-errors

如何在 try catch 错误中使用错误方法?

谢谢。

Nic*_*nec 11

你必须error在你的asyncData方法中注入对象才能在里面使用它:

async asyncData({ error, params }) {
  // your code
}
Run Code Online (Sandbox Code Playgroud)