javascript - Nuxt。属性或方法 "posts"未在实例上定义但在渲染期间被引用

标签 javascript vue.js nuxt.js

我在这个项目中使用 Nuxt js。我在这里使用该功能 asyncData 在服务器端获取数据。这就是为什么我不能将数据设置为“数据”,因为所有数据都是在服务器上获取的。但是我在控制台中遇到错误“属性或方法“posts”未在实例上定义但在渲染期间被引用...”。

<template>
    <div>
        <v-list v-for="item in posts">
            <v-list-tile :key="item.id">
                <v-list-tile-content>
                    <h1>{{item.title}}</h1>
                </v-list-tile-content>
            </v-list-tile>
        </v-list>
    </div>
</template>

export default {
        asyncData() {
return axios.get('https://jsonplaceholder.typicode.com/posts')
                .then(response => {
                    return {posts: response.data}
                })
        }
    }

由于文档,https://nuxtjs.org/guide/async-data我只需要使用“帖子”

最佳答案

asyncData() 方法仅适用于 pages .

来自官方的 nuxt.js 文档:

更新: Async data in components

  1. 使用 Nuxt 2.12 及更高版本中可用的新获取 Hook 。
  2. 在挂载的 Hook 中调用 API 并在加载时设置数据属性。缺点:不适用于服务器端呈现。
  3. 在页面组件的 asyncData 方法中调用 API,并将数据作为 props 传递给子组件。服务器渲染将正常工作。缺点:页面的 asyncData 可能不太可读,因为它正在加载其他组件的数据。

关于javascript - Nuxt。属性或方法 "posts"未在实例上定义但在渲染期间被引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55855952/

相关文章:

vuejs2 - 如何在 Nuxt(或 Vue)中将文本文件中的内容作为字符串读取?

javascript - vuejs 组件模板文件

javascript - 永远不会报告带有去抖动的 Vue 组件方法中的错误

javascript - 在 Nuxt 中设置输出文件夹的路径

css - 顺风 : how to use @apply for custom class in nuxt2?

file-upload - 在 ASP.NET Core 中使用 Axios 和 Vue.JS 进行多文件上传

javascript - 带有指向其他页面的链接的 jQuery 单页滚动

javascript - jQuery:操作前一个div(不是父级或子级)

javascript - 如何在 npm 中阻止广告?

Javascript - 购物车仅添加 1 件商品,即使购买了 2 或 5 件商品