Nuxt.js中Axios的使用

本文详细介绍了在Nuxt.js项目中如何安装、配置并使用Axios进行数据异步请求。从安装到配置,再到具体使用场景,包括在asyncData方法中如何正确调用Axios获取数据,避免在服务端渲染时出现的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Nuxt.js中Axios的使用

  • 1. 安装

npm install --save axios
  • 2. 配置

为防止重复打包,在nuxt.config.js中配置

module.exports = {
  build: {
    vendor: ['axios']
  }
}
  • 3. 重启

每当更改nuxt.config.js中配置,需要重新启动项目:

npm run dev  
  • 4. 使用

必要知识储备:

Nuxt.js 扩展了 Vue.js,增加了一个叫 asyncData 的方法,使得我们可以在设置组件的数据之前能异步获取或处理数据。asyncData方法会在组件(限于页面组件)每次加载之前被调用。它可以在服务端或路由更新之前被调用。所以需要注意这个函数中不能使用this

注意:常规写法如果在created钩子中写异步,是在客户端渲染的而不是在服务端

使用方法:asyncData(context, callback) {callback(null, data)}

context.route.params.xxx获取参数或者context.params.xxx

callback(new Error(), data)渲染出错的页面

注意:这个方法在服务器端执行和在客户端执行的区别

import axios from 'axios'

asyncData(context, callback) {
  axios.get('https://jsonplaceholder.typicode.com/posts')
    .then(res => {
      console.log(res);
      callback(null, {list: res.data})
    })
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值