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+css 网页每次加载不同样式的实现方法
Dec 27 Javascript
javascript根据时间生成m位随机数最大13位
Oct 30 Javascript
node.js中的path.delimiter方法使用说明
Dec 09 Javascript
jquery控制表单输入框显示默认值的方法
May 22 Javascript
使用jQuery制作浮动工具栏的实例分享
May 13 Javascript
微信小程序 LOL 英雄介绍开发实例
Sep 30 Javascript
详解vue-router 2.0 常用基础知识点之router-link
May 10 Javascript
BootStrap Select清除选中的状态恢复默认状态
Jun 20 Javascript
Vue实现数字输入框中分割手机号码的示例
Oct 10 Javascript
在vue中解决提示警告 for循环报错的方法
Sep 28 Javascript
js原生map实现的方法总结
Jan 19 Javascript
微信小程序用canvas画图并分享
Mar 09 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
咖啡豆要不要放冰箱的原因
2021/03/04 冲泡冲煮
PHP 数字左侧自动补0
2008/03/31 PHP
php中将数组存到文件里的实现代码
2012/01/19 PHP
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
2012/02/05 PHP
php 类中的常量、静态属性、非静态属性的区别
2017/04/09 PHP
关于php 高并发解决的一点思路
2017/04/16 PHP
PHP实现的各类hash算法长度及性能测试实例
2017/08/27 PHP
PHP实现的权重算法示例【可用于游戏根据权限来随机物品】
2019/02/15 PHP
php版本CKEditor 4和CKFinder安装及配置方法图文教程
2019/06/05 PHP
PHP实现将上传图片自动缩放到指定分辨率,并保持清晰度封装类示例
2019/06/17 PHP
JavaScript this调用规则说明
2010/03/08 Javascript
jQuery中大家不太了解的几个方法
2015/03/04 Javascript
BootStrap制作导航条实例代码
2016/05/06 Javascript
js实现模糊匹配功能
2017/02/15 Javascript
jQuery设计思想
2017/03/07 Javascript
JS动画定时器知识总结
2018/03/23 Javascript
jQuery弹框插件使用方法详解
2020/05/26 jQuery
基于VSCode调试网页JavaScript代码过程详解
2020/07/20 Javascript
js实现星星海特效的示例
2020/09/28 Javascript
Python机器学习之SVM支持向量机
2017/12/27 Python
解决python3中解压zip文件是文件名乱码的问题
2018/03/22 Python
解决python写入mysql中datetime类型遇到的问题
2018/06/21 Python
Pycharm2017版本设置启动时默认自动打开项目的方法
2018/10/29 Python
python程序快速缩进多行代码方法总结
2019/06/23 Python
Python爬虫学习之获取指定网页源码
2019/07/30 Python
解决python中的幂函数、指数函数问题
2019/11/25 Python
pycharm激活码有效到2020年11月底
2020/09/18 Python
使用pyplot.matshow()函数添加绘图标题
2020/06/16 Python
CSS3混合模式mix-blend-mode/background-blend-mode简介
2018/03/15 HTML / CSS
教育英语专业毕业生的求职信
2014/03/13 职场文书
业务内勤岗位职责
2014/04/30 职场文书
爱护公物演讲稿
2014/09/09 职场文书
政工师工作总结2015
2015/05/26 职场文书
python爬不同图片分别保存在不同文件夹中的实现
2021/04/02 Python
浅谈JS的原型和原型链
2021/06/04 Javascript
JavaScript 数组去重详解
2021/09/15 Javascript