7.【nuxt起步】-Nuxt与后端数据交互

摘要:
接下来是对接服务器接口并显示真实数据。1.创建虚拟接口地址:http://test.yms.cn/testjson.asp输出数据:{“标题”:“单人房租金”,“价格”:“350.0元/月”,“类型”:“1间房、1间厅、1间浴室”,“方形”:“2”,“关键字”:[{“单词”:“床”},{“词”:“烹饪”},

接下来就是对接服务端接口,展示真实的数据

1.做了个虚拟接口地址:http://test.yms.cn/testjson.asp

输出数据:

复制代码

{

  "title": "单间出租",

  "price": "350.0元/月",

  "type": "1室1厅1卫",

  "square": "2",

  "keyWord": [{"word": "床"}, {"word": "可做饭"}, {"word": "独立卫生间"}],

  "danjia": "17",

  "xiaoqu": "王店镇宝华村",

  "floor": "低层/1层",

  "fwtype": "普通住宅",

  "toward": "不限朝向",

  "decor": "普通装修",

  "deposit": "押1付1",

  "linkman": "王先生",

  "area": "秀洲区商业区",

  "fid": "70823",

  "address": "王店镇宝华村",

  "desc": "交通便利可以仃车院子大",

  "headimg": "https://www.vyuan8.com/vyuan/source/plugin/vyuan_fangchan/static/images/avatar.png",

  "faburen": "王先生"

}

复制代码

2.Nuxt 请求接口 需要用到axios  ,可以先搜索引擎练习下axios

cnpm install @nuxtjs/axios --save

3.plugins目录新建axios.js

编码:

复制代码

import * as axios from 'axios'

let options ={}

//需要全路径才能工作

if(process.server){

  options.baseURL=`http://${process.env.HOST || 'localhost'}:${process.env.PORT || 3000}/api`

}

export default axios.create(options)

复制代码

4.Nuxt.config.js增加axios配置

modules:[

  '@nuxtjs/axios'

],

5.先来个测试:

 7.【nuxt起步】-Nuxt与后端数据交互第5张

输出:

 7.【nuxt起步】-Nuxt与后端数据交互第6张

Network没有结果,但consloe有输出了

 7.【nuxt起步】-Nuxt与后端数据交互第7张

因为axios是异步的,稍微改造下

复制代码

async asyncData({

  app

}){

  let res =await axios({

  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },

  method: 'get',

  url: `http://test.yms.cn/testjson.asp`,

  data: ''

  })

  console.log(res)

},

复制代码

 这时候console打印出结果了,但是 chrome中的network没有找到请求了,这是什么原因呢,其实这就是nuxt的特点,如果它出现在network,其实就是ajax异步请求了,那么seo不支持ajax,其实nuxt就是异步把网络请求了然后再render出来,性能上肯定有稍微的消耗,但基本差别不大,小的应用可以忽略,改造下:

复制代码

async asyncData({

  app

}){

  let res =await axios({

  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },

  method: 'get',

  url: `http://test.yms.cn/testjson.asp`,

  data: ''

  })

  console.log(res.data.title)

  return{

  testData:res.data.title

  }

},

复制代码

刷新:

 7.【nuxt起步】-Nuxt与后端数据交互第12张

输出正确

免责声明:文章转载自《7.【nuxt起步】-Nuxt与后端数据交互》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇四. sql上线平台---不推荐mysql之面试问题总结下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Vue实现左侧可伸缩

导出默认值{name:‘Home’,data(){return{openStatus:true,open_close:true,}},方法:{change()}this.openStatus=!this.openStatusif(this.open状态){setTimeout(()=˃{this.open_close=true},1000)}else{set...

SpringBoot项目中@Async方法没有执行的问题分析

现象:1.明显的现象:在日志文件中找不到方法中的日志输出,并且没有错误报告(即,未执行@Async标记的方法,也没有错误报告)。2.分析现象:日志中某段时间后没有任务xxx线程的日志原因:@Async异步方法默认使用Spring创建ThreadPoolTaskExecutor(参考TaskExecutionAutoConfiguration),其中默认核心线...

正负无穷float('inf')的一些用法

示例:输入:[-2,1,-3,4,-1,2,1,-5,4],输出:6解释:连续子数组[4],-1,2,1]的和最大,为6。...

华为 HG526 破解实录(一)Cfg文件加解密工具

几天前,我去中国电信安装E169软件包,并发送了一个华为HG526无线路由猫和一个中兴xxx网络机顶盒(尚未开始制造麻烦)。当然,无线路由猫一如既往地被阉割了。搜索之后,我开始了我的快攻之旅。1.打开catdrop管理页面,使用telecomadmin和nE7jA%5m登录;2.将U盘插入猫。3.开放式管理=˃设备管理、备份配置。4.打开U盘,放下ctce8...

Android:在任务列表隐藏最近打开的app

//schemas.android.com/apk/res/android“package=”com.li.test“android:versionName=”1.0“&gt:targetSdkVersion=”23“/&gt:allowBackup=”true“android:icon=”@mipmap/ic_launcher“androi...

java中cookie存取值

Cookie保存值:CookieuserCookie=newCookie(“loginInfo”,loginInfo);userCookie.setMaxAge(30*24*60*60);//生存期为一个月30*24*60*60userCookie.setPath(“/”);response.addCookie(userCookie);Cookie值:Coo...