使用Vue调取接口,并渲染数据的示例代码


Posted in Javascript onOctober 28, 2019

刚接触vue.js框架的时候,很伤脑筋。今天整理一下post/get两种方式,简单的调取数据库数据,并进行渲染,希望帮助大家!

首先,在HTML页面引入:

//引入vue.js文件
<script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
引入vue-resource.min.js文件,就可以引入接口方法了
<script src="https://cdn.staticfile.org/vue-resource/1.5.1/vue-resource.min.js"></script>

然后,在body中书写div:

//id在下面js中进行引用
<div id="box">
 
 <table border="1" cellpadding="0" cellspacing="0">
 <tr>
 <td>序号</td>
 <td>姓名</td>
 <td>头像</td>
 </tr>
  //v-for 循环数据表中的数据
 <tr v-for="v in msg">
 <td>{{v.id}}</td>
 <td>{{v.username}}</td> 
 <td>{{v.photo}}</td>
 </tr>
 </table>
</div>

第三,js代码:

<script type = "text/javascript">
window.onload = function(){
//实例化vue类
var vm = new Vue({
 //绑定box
 el:'#box',
 data:{
   //设置msg内容为空,在请求数据前为空的状态
   msg:'',
   },
 mounted:function () {
   //调取本地的get(就在下面)
   this.get();
   },
 methods:{
 get:function(){
   //发送get请求
   this.$http.post('http://你的IP/api/方法',{key:"密钥"},{emulateJSON:true}).then(function(res){
    //msg等于回调函数返回的res(值)
    this.msg=res.body.data;
    //在打印台测试打印,无误后一定要删除
    console.log(res);  
   },function(){
    console.log('请求失败处理');
   });
  }
 }
});
}
</script>

控制器:

public function index()
 {
  //  //引入秘钥
  $pwd=new ApisModel();
  $passwd=$pwd->passwd();
  // print_r($passwd);die;
  //空的数组,等待输入秘钥与存储在model层的秘钥对比
  $date=request()->get();
   // print_r($date);die;
  // 对比秘钥是否一致
  if($date['key']==$passwd){
    $model=new ApisModel();
    $data=$model->role_show();
   
    return json(array('data'=>$data,'code'=>1,'message'=>'操作完成'));
   }else{
    $data = ['name'=>'status','message'=>'操作失败'];
    
    return json(['data'=>$data,'code'=>2,'message'=>'秘钥不正确']);
   }
 
 }

model:

public function passwd(){
 $key='存放在本地的密钥';
  return $key;
 }
 //简单的测试接口
 public function role_show(){
  return Db::name('role_power')->select();
 
 }

OK,post方式搞定了,下面是vue使用get方法进行接口调用,渲染数据

简单粗暴,大致一样,就不一一详解了,上代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue 测试实例 - 菜鸟教程(runoob.com)</title>
<script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
<script src="https://cdn.staticfile.org/vue-resource/1.5.1/vue-resource.min.js"></script>
</head>
<body>
 
<div id="box">
 
 <table border="1" cellpadding="0" cellspacing="0">
 <tr>
 <td style="width:130px;height:30px;">ROLE_ID</td>
 <td style="width:130px;height:30px;">POWER_ID</td>
 <td style="width:130px;height:30px;">创建时间</td>
 </tr>
 <tr v-for="v in msg">
 <td style="width:130px;height:30px;">{{v.role_id}}</td>
 <td style="width:130px;height:30px;">{{v.power_id}}</td> 
 <td style="width:130px;height:30px;">{{v.create_time}}</td>
 </tr>
 </table>
</div>
<script type = "text/javascript">
window.onload = function(){
var vm = new Vue({
 el:'#box',
 data:{
   msg:'',
   },
 mounted:function () {
   this.get();
   },
 methods:{
   get:function(){
    //发送get请求
    this.$http.get("http://ip?key=密钥",{emulateJSON:true}).then(function(res){
     console.log(res.body); 
     this.msg=res.body.data; 
    },function(){
     console.log('请求失败处理');
    });
   }
  }
});
}
</script>
</body>
</html>

ok,都测试好了,可以使用,千万别搞错id哦。

以上这篇使用Vue调取接口,并渲染数据的示例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
前端开发必须知道的JS之原型和继承
Jul 06 Javascript
使用js实现数据格式化
Dec 03 Javascript
js闭包所用的场合以及优缺点分析
Jun 22 Javascript
jquery 无限极下拉菜单的简单实例(精简浓缩版)
May 31 Javascript
jQuery简单实现页面元素置顶时悬浮效果示例
Aug 01 Javascript
AngularJS实现给动态生成的元素绑定事件的方法
Dec 14 Javascript
原生JS实现图片网格式渐显、渐隐效果
Jun 05 Javascript
详解angularjs的数组传参方式的简单实现
Jul 28 Javascript
vue 使用ref 让父组件调用子组件的方法
Feb 08 Javascript
Vue 组件传值几种常用方法【总结】
May 28 Javascript
详解Require.js与Sea.js的区别
Aug 05 Javascript
对vue中的事件穿透与禁止穿透实例详解
Oct 28 Javascript
JavaScript 反射和属性赋值实例解析
Oct 28 #Javascript
vue 解决数组赋值无法渲染在页面的问题
Oct 28 #Javascript
在vue中把含有html标签转为html渲染页面的实例
Oct 28 #Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
Oct 28 #Javascript
Vue实现将数据库中带html标签的内容输出(原始HTML(Raw HTML))
Oct 28 #Javascript
js实现图片无缝循环轮播
Oct 28 #Javascript
Vue 实现html中根据类型显示内容
Oct 28 #Javascript
You might like
对laravel in 查询的使用方法详解
2019/10/09 PHP
php使用redis的有序集合zset实现延迟队列应用示例
2020/02/20 PHP
自用js开发框架小成 学习js的朋友可以看看
2010/11/16 Javascript
Extjs 继承Ext.data.Store不起作用原因分析及解决
2013/04/15 Javascript
jquery实现简单的拖拽效果实例兼容所有主流浏览器(优化篇)
2013/06/28 Javascript
使用js判断控件是否获得焦点
2014/01/03 Javascript
jquery+json实现分页效果
2016/03/07 Javascript
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
2016/08/05 Javascript
JS识别浏览器类型(电脑浏览器和手机浏览器)
2016/11/18 Javascript
jQuery中的100个技巧汇总
2016/12/15 Javascript
React利用插件和不用插件实现双向绑定的方法详解
2017/07/03 Javascript
JS设计模式之单例模式(一)
2017/09/29 Javascript
JavaScript函数式编程(Functional Programming)组合函数(Composition)用法分析
2019/05/22 Javascript
JavaScript进制转换实现方法解析
2020/01/18 Javascript
文章或博客自动生成章节目录索引(支持三级)的实现代码
2020/05/10 Javascript
理解JavaScript中的Proxy 与 Reflection API
2020/09/21 Javascript
原生js实现放大镜组件
2021/01/22 Javascript
Python 中的 else详解
2016/04/23 Python
Python实现根据日期获取当天凌晨时间戳的方法示例
2019/04/09 Python
解决Python3用PIL的ImageFont输出中文乱码的问题
2019/08/22 Python
解决Python中回文数和质数的问题
2019/11/24 Python
TensorFlow学习之分布式的TensorFlow运行环境
2020/02/05 Python
python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例
2020/02/25 Python
在tensorflow下利用plt画论文中loss,acc等曲线图实例
2020/06/15 Python
详解pyinstaller生成exe的闪退问题解决方案
2020/06/19 Python
美国机场停车位预订:About Airport Parking
2018/03/26 全球购物
世界各地的旅游、观光和活动:Isango!
2019/10/29 全球购物
意大利比基尼品牌:MISS BIKINI
2019/11/02 全球购物
Monica Vinader官网:英国轻奢珠宝品牌
2020/02/05 全球购物
应聘自荐书
2013/10/08 职场文书
毕业自我鉴定总结
2014/03/24 职场文书
2014年医院十一国庆节活动方案
2014/09/15 职场文书
2014年保密工作总结
2014/11/22 职场文书
民政局标准版离婚协议书
2014/12/01 职场文书
教师自荐信范文
2015/03/06 职场文书
分析mysql中一条SQL查询语句是如何执行的
2021/06/21 MySQL