Asyncdata与Fetch之间的区别

vue.js Vue.js

YOC67350214

2020-03-12

提取和异步数据之间的确切区别是什么。官方文档说:

异步数据

您可能想要获取数据并将其呈现在服务器端。Nuxt.js添加了asyncData方法,可让您在设置组件数据之前处理异步操作。

每次在加载组件之前都会调用asyncData(仅对于页面组件)。可以从服务器端调用它,也可以在导航到相应的路由之前调用它。此方法将上下文对象作为第一个参数,您可以使用它来获取一些数据并返回组件数据。


fetch方法用于在呈现页面之前填充商店,这与asyncData方法类似,只不过它没有设置组件数据。如果设置了fetch方法,则每次在加载组件之前都会调用它(仅适用于页面组件)。可以从服务器端调用它,也可以在导航到相应的路由之前调用它。

fetch方法接收上下文对象作为第一个参数,我们可以使用它来获取一些数据并填充存储。为了使fetch方法异步,返回Promise,nuxt.js将在渲染组件之前等待Promise被解决。


提取用于填充数据吗?但是在asyncData中也可以通过存储来提交吗?我不明白为什么有两种方法。

两种方法都在初始加载时在服务器端运行,此后,当您浏览应用程序时,它将在客户端运行。

有人可以向我解释使用这些方法的优势吗?

感谢帮助。

第1012篇《Asyncdata与Fetch之间的区别》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

1个回答
小胖猪猪 2020.03.12

我要指出的一点是,我没有看到上述内容(至少,不清楚)。asyncData自动将数据合并到页面的data()对象中。提取没有。借助fetch,您可以根据需要自行处理数据。

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android