使用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 相关文章推荐
用Javascript读取中文COOKIE的解决办法
Feb 15 Javascript
一直复略了的一个问题,关于表单重复提交
Feb 15 Javascript
关于恒等于(===)和非恒等于(!==)
Aug 20 Javascript
jQuery操作select的实例代码
Jun 14 Javascript
基于jQuery实现图片的前进与后退功能
Apr 24 Javascript
js获取多个tagname的节点数组
Sep 22 Javascript
基于javascript实现按圆形排列DIV元素(二)
Dec 02 Javascript
JS实现获取来自百度,Google,soso,sogou关键词的方法
Dec 21 Javascript
基于JavaScript实现飘落星星特效
Aug 10 Javascript
Vue0.1的过滤代码如何添加到Vue2.0直接使用
Aug 23 Javascript
利用JS响应式修改vue实现页面的input值
Sep 02 Javascript
基于VUE的v-charts的曲线显示功能
Oct 01 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
PHP魔术方法使用方法汇总
2016/02/14 PHP
PHP Mysqli 常用代码集合
2016/11/12 PHP
Laravel框架实现利用中间件进行操作日志记录功能
2018/06/06 PHP
使用PHP反射机制来构造&quot;CREATE TABLE&quot;的sql语句
2019/03/21 PHP
Laravel 微信小程序后端实现用户登录的示例代码
2019/11/26 PHP
jQuery中读取json文件示例代码
2013/05/10 Javascript
javascript简单实现表格行间隔显示颜色并高亮显示
2013/11/29 Javascript
js中使用replace方法完成某个字符的转换
2014/08/20 Javascript
DOM操作一些常用的属性汇总
2015/03/13 Javascript
c#程序员对TypeScript的认识过程
2015/06/19 Javascript
javascript html实现网页版日历代码
2016/03/08 Javascript
JQuery实现简单的服务器轮询效果实例
2016/03/31 Javascript
使用three.js 画渐变的直线
2016/06/05 Javascript
AngularJs定制样式插入到ueditor中的问题小结
2016/08/01 Javascript
NodeJS如何实现同步的方法示例
2018/08/24 NodeJs
JS判断浏览器类型与操作系统的方法分析
2020/04/30 Javascript
在Python的Django框架中实现Hacker News的一些功能
2015/04/17 Python
python通过apply使用元祖和列表调用函数实例
2015/05/26 Python
Python通过正则表达式选取callback的方法
2015/07/18 Python
对python mayavi三维绘图的实现详解
2019/01/08 Python
Python 判断图像是否读取成功的方法
2019/01/26 Python
Django给admin添加Action的步骤详解
2019/05/01 Python
对python3 sort sorted 函数的应用详解
2019/06/27 Python
爬虫代理池Python3WebSpider源代码测试过程解析
2019/12/20 Python
Python 数据的累加与统计的示例代码
2020/08/03 Python
Elasticsearch py客户端库安装及使用方法解析
2020/09/14 Python
英国羊绒服装购物网站:Pure Collection
2018/10/22 全球购物
荷兰在线啤酒店:Beerwulf
2019/08/26 全球购物
美国和加拿大计算机和电子产品购物网站:TigerDirect.com
2019/09/13 全球购物
收入及婚姻状况证明
2014/11/20 职场文书
2015年三万活动总结
2015/03/25 职场文书
餐饮店长岗位职责
2015/04/14 职场文书
仓库统计员岗位职责
2015/04/14 职场文书
2015年汽车销售员工作总结
2015/07/24 职场文书
学校安全管理制度
2015/08/06 职场文书
一条 SQL 语句执行过程
2022/03/17 MySQL