vue结合axios与后端进行ajax交互的方法


Posted in Javascript onJuly 06, 2018

以前vue官方推荐的ajax库是vue-resource, 现在改为axios

axios的github仓库

实现的效果:

vue结合axios与后端进行ajax交互的方法

异步请求

页面异步发出get请求获取数据,提交表单异步post数据到服务端

客户端

客户端代码

代码解析:

// 服务端请求地址
let url = 'http://local.php.com/index.php';
let vm = new Vue({
  el: "#app",
  data: {
    list: [],
    name: '',
    saying: '',
  },
  methods: {
    add() {
      // 传送的数据为json格式
      let data = JSON.stringify({
        name: this.name,
        saying: this.saying
      });
      axios.post(url, data)
      .then(function (response) {
        // console.log(response);
        // 获取服务端返回的数据
        vm.$data.list = response.data;
      })
      .catch(function (error) {
        console.log(error);
      });
    }
  }
});
axios.get(url, {})
  .then(function (response) {
    vm.$data.list = response.data;
  })
  .catch(function (error) {
    console.log(error);
  })
  .then(function () {
    // always executed
  });

服务端

使用php作为服务端程序

服务端代码

代码解析:

<?php
  header("Access-Control-Allow-Origin:*"); // 如果客户端和服务端不同域,要加上这行代码,不然会报跨域错误
  $data = [
    1 => ['name' => '孙悟空', 'saying' => '我是在地球上成长的赛亚人'],
  ];
  
  $post = file_get_contents("php://input"); // 不要用$_POST接收数据
  if ($post) {
    $data[] = json_decode($post, true);
  }
  echo json_encode($data, true);

vue结合axios与后端进行ajax交互的方法

异步请求.gif

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript在IE下设置innerHTML时出现未知的运行时错误的解决方法
Jan 12 Javascript
使用jQuery同时控制四张图片的伸缩实现代码
Apr 19 Javascript
jQuery获取当前对象标签名称的方法
Feb 07 Javascript
Dojo Javascript 编程规范 规范自己的JavaScript书写
Oct 26 Javascript
移动Web中图片自适应的两种JavaScript解决方法
Jun 18 Javascript
js实现防止被iframe的方法
Jul 03 Javascript
借助FileReader实现将文件编码为Base64后通过AJAX上传
Dec 24 Javascript
深入理解事件冒泡(Bubble)和事件捕捉(capture)
May 28 Javascript
canvas实现流星雨的背景效果
Jan 13 Javascript
react.js 翻页插件实例代码
Jan 19 Javascript
详解Angular2中Input和Output用法及示例
May 21 Javascript
详解利用eventemitter2实现Vue组件通信
Nov 04 Javascript
jQuery实现仿京东防抖动菜单效果示例
Jul 06 #jQuery
vue.js动画中的js钩子函数的实现
Jul 06 #Javascript
老生常谈JS中的继承及实现代码
Jul 06 #Javascript
vue.js使用v-if实现显示与隐藏功能示例
Jul 06 #Javascript
vue.js计算属性computed用法实例分析
Jul 06 #Javascript
vue.js实现的绑定class操作示例
Jul 06 #Javascript
vue.js实现插入数值与表达式的方法分析
Jul 06 #Javascript
You might like
PHP4在Windows2000下的安装
2006/10/09 PHP
探讨:如何编写PHP扩展
2013/06/13 PHP
浅析php如何实现App常用的秒发功能
2016/08/03 PHP
PHP图片裁剪与缩放示例(无损裁剪图片)
2017/02/08 PHP
PHP设计模式之 策略模式Strategy详解【对象行为型】
2020/05/01 PHP
PHP http请求超时问题解决方案
2020/11/13 PHP
javascript form 验证函数 弹出对话框形式
2009/06/23 Javascript
Javascript实现的常用算法(如冒泡、快速、鸽巢、奇偶等)
2014/04/29 Javascript
jquery实现聚光灯效果的方法
2015/02/06 Javascript
延时加载JavaScript代码提高速度
2015/12/27 Javascript
jQuery实现简单隔行变色的方法
2016/02/20 Javascript
Angular2内置指令NgFor和NgIf详解
2016/08/03 Javascript
微信小程序 在Chrome浏览器上运行以及WebStorm的使用
2016/09/27 Javascript
解析JavaScript数组方法reduce
2016/12/12 Javascript
js中数组插入、删除元素操作的方法
2017/02/15 Javascript
聊聊那些使用前端Javascript实现的机器学习类库
2017/09/18 Javascript
bootstrap table实现点击翻页功能 可记录上下页选中的行
2017/09/28 Javascript
教你如何用node连接redis的示例代码
2018/07/12 Javascript
jquery+ajax实现上传图片并显示上传进度功能【附php后台接收】
2019/06/06 jQuery
vue 需求 data中的数据之间的调用操作
2020/08/05 Javascript
javascript 数组(list)添加/删除的实现
2020/12/17 Javascript
[45:10]NB vs Liquid Supermajor小组赛 A组胜者组决赛 BO3 第二场 6.2
2018/06/04 DOTA
详解Python之数据序列化(json、pickle、shelve)
2017/03/30 Python
django 创建过滤器的实例详解
2017/08/14 Python
python简单实例训练(21~30)
2017/11/15 Python
利用Python如何制作好玩的GIF动图详解
2018/07/11 Python
python Tkinter版学生管理系统
2019/02/20 Python
Django Docker容器化部署之Django-Docker本地部署
2019/10/09 Python
python利用dlib获取人脸的68个landmark
2019/11/27 Python
python实现梯度法 python最速下降法
2020/03/24 Python
解决python运行效率不高的问题
2020/07/20 Python
AT&T Wireless:手机、无限数据计划和配件
2018/06/03 全球购物
高中生自我鉴定范文
2013/10/30 职场文书
应届生们该怎么书写求职信?
2019/07/05 职场文书
纯CSS实现酷炫的霓虹灯效果
2021/04/13 HTML / CSS
B站评分公认最好看的动漫,你的名字评分9.9,第六备受喜欢
2022/03/18 日漫