Vue如何获取数据列表展示


Posted in Javascript onDecember 11, 2019

这个例子从 Github 的 API 中获取了最新的 Vue.js 提交数据,并且以列表形式将它们展示了出来。你可以轻松地切换 master 和 dev 分支。

一、展示

Vue如何获取数据列表展示

二、源码

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>Document</title>
 <script src="https://cdn.jsdelivr.net/npm/vue@2.6.7/dist/vue.js"></script>
</head>
<body>
 <div id="app">
  <h2>title</h2>
  <template v-for="(branch, index) in branches">
   <input type="radio" 
    :id=index 
    :value="branch" 
    v-model="currentBranch"
   />
   <label :for="index">{{ branch }}</label>
  </template>
  <div>当前选定:{{ currentBranch }}</div>
  <ul>
   <li v-for="item in getData">
    <a :href="item.html_url" rel="external nofollow" >{{ item.sha.slice(0, 7) }}</a>
    - <span>{{ item.commit.message }}</span><br/>
    <span>创建人:<a :href="item.author.html_url" > {{ item.commit.author.name }}</a></span><br/>
    <span>创建时间:{{ item.commit.author.date | formatDate }}</span>
   </li>
  </ul>
 </div>

 <script>
  let apiURL = 'https://api.github.com/repos/vuejs/vue/commits?per_page=3&sha='
  let vm = new Vue({
   el: '#app',
   data() {
    return ({
     branches: ['master', 'dev'],
     currentBranch: 'master',
     getData: null,   
    });
   },
   created() {
    this.fetchDate();
   },
   watch: {
    currentBranch: 'fetchDate'
   },
   filters: {
    formatDate(v) {
     return v.replace(/T|Z/g, ' ');
    }
   },
   methods: {
    fetchDate() {
     var xhr;
     if(window.XMLHttpRequest) {
      xhr = new XMLHttpRequest();
     }else {
      xhr = new ActiveXObject("Microsoft.XMLHTTP");
     }
     let self = this;
     
     xhr.onload = function() {
      if(xhr.readyState == 4) {
       if(xhr.status >= 200 && xhr.status < 300 || xhr.status == 304) {
        self.getData = JSON.parse(xhr.responseText);
       }else {
        console.error(xhr.status, xhr.statusText);
       }
      }
     }
     xhr.open('GET', apiURL + this.currentBranch);
     xhr.send(null);
    }
   },
  });
 </script>
</body>
</html>

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

Javascript 相关文章推荐
JScript中的undefined和&quot;undefined&quot;的区别
Mar 08 Javascript
javascript中的继承实例代码
Apr 27 Javascript
基于jquery的button默认enter事件(回车事件)。
May 18 Javascript
关于 文本框默认值 的操作js代码
Jan 12 Javascript
JQuery中对Select的option项的添加、删除、取值
Aug 25 Javascript
JavaScript实现的GBK、UTF8字符串实际长度计算函数
Aug 27 Javascript
深入理解javascript严格模式(Strict Mode)
Nov 28 Javascript
javaScript中定义类或对象的五种方式总结
Dec 04 Javascript
vue element-ui 绑定@keyup事件无效的解决方法
Mar 09 Javascript
Vue EventBus自定义组件事件传递
Jun 25 Javascript
Angular使用Restful的增删改
Dec 28 Javascript
vue+element-ui+axios实现图片上传
Aug 20 Javascript
vue el-table实现行内编辑功能
Dec 11 #Javascript
Vue.js实现可编辑的表格
Dec 11 #Javascript
Vue.js 实现地址管理页面思路详解(地址添加、编辑、删除和设置默认地址)
Dec 11 #Javascript
用JS实现一个简单的打砖块游戏
Dec 11 #Javascript
js消除图片小游戏代码
Dec 11 #Javascript
详解vue中$nextTick和$forceUpdate的用法
Dec 11 #Javascript
基于jQuery实现可编辑的表格
Dec 11 #jQuery
You might like
PHP实现恶意DDOS攻击避免带宽占用问题方法
2015/05/27 PHP
浅谈Laravel核心解读之Console内核
2018/12/02 PHP
php5与php7的区别点总结
2019/10/11 PHP
Laravel 解决composer相关操作提示php相关异常的问题
2019/10/23 PHP
Javascript根据指定下标或对象删除数组元素
2012/12/21 Javascript
基于JavaScript实现继承机制之原型链(prototype chaining)的详解
2013/05/07 Javascript
IE下JS读取xml文件示例代码
2013/08/05 Javascript
jQuery验证插件validation使用指南
2015/04/21 Javascript
实现高性能JavaScript之执行与加载
2016/01/30 Javascript
JS中正则表达式只有3种匹配模式(没有单行模式)详解
2016/07/28 Javascript
JavaScript实现省市县三级级联特效
2017/05/16 Javascript
vue-router路由参数刷新消失的问题解决方法
2017/06/17 Javascript
react路由配置方式详解
2017/08/07 Javascript
JavaScript使用Ajax上传文件的示例代码
2017/08/10 Javascript
vue用addRoutes实现动态路由的示例
2017/09/15 Javascript
Popup弹出框添加数据实现方法
2017/10/27 Javascript
在vue项目中,使用axios跨域处理
2018/03/07 Javascript
jquery实现点击左右按钮切换图片
2021/01/27 jQuery
Python表示矩阵的方法分析
2017/05/26 Python
python+pyqt实现右下角弹出框
2017/10/26 Python
python抖音表白程序源代码
2019/04/07 Python
python基于itchat模块实现微信防撤回
2019/04/29 Python
python使用minimax算法实现五子棋
2019/07/29 Python
Python安装第三方库攻略(pip和Anaconda)
2020/10/15 Python
利用 CSS3 实现的无缝轮播功能代码
2017/09/25 HTML / CSS
CSS3贝塞尔曲线示例:创建链接悬停动画效果
2020/11/19 HTML / CSS
英国家庭珠宝商:T. H. Baker
2018/02/08 全球购物
岳父生日宴会答谢词
2014/01/13 职场文书
2014年三八妇女节活动方案
2014/02/28 职场文书
大学新生军训自我鉴定
2014/03/18 职场文书
五分钟演讲稿
2014/04/30 职场文书
事业单位个人查摆问题及整改措施
2014/10/28 职场文书
办公室禁烟通知
2015/04/23 职场文书
2015年平安创建工作总结
2015/04/29 职场文书
MySQL update set 和 and的区别
2021/05/08 MySQL
Vue实现下拉加载更多
2021/05/09 Vue.js