详解通过JSON数据使用VUE.JS


Posted in Javascript onMay 26, 2017

最近接到一个比较简单的项目,不准备使用数据库,打算用JSON数据就可以了。结合当前火热的VUE.JS进行数据渲染。

尽管不打算使用数据库,可是一般的操作增删查改依旧是少不了的。如果使用到数据库的话,不妨做一个API出来,那么网站、APP等都可以依照这个进行操作。在这篇文章里面,我们只是打算简单的引用而已。

下面先来看看我的JSON文件,这里是一个类别文档Category.json:

{
  "msg": "ok",
  "data":[
{
 "ID":"1",
 "name": "地产",
 "Url":"/Category/List/1"
},
{ "ID":"2",
 "name": "科技",
 "Url":"/Category/List/2"},
{ "ID":"3",
 "name": "医药",
 "Url":"/Category/List/3"},
{ "ID":"4",
 "name": "其他",
 "Url":"/Category/List/4"}
]
}

下面我们通过Javascript进行渲染,将数据渲染到导航里面去。这里有两种方式:如果你的项目已经带有JQuery的话,可以参考一下使用下面的代码:

$(function(){ 
    $.ajax({ 
     type:'get', 
     url:'Category.json', 
     success: function(data){ 
      if(data.msg == "ok"){
       pushDom(data.data); 
      }
      else
      { 
       alert("服务器返回异常");
      } }, 
     error: function(data){ 
      alert(JSON.stringify(data));
     } 
    }); 
 function pushDom(data1){ 
  var vm = new Vue({ el: '#app', data: { peps:data1 } });
 }
})

然后到html中,把数据渲染出来

<div id="app" class="inner">
  <ul v-for = "pep in peps ">
    <li><a href="{{pep.Url}}" rel="external nofollow" > {{pep.name}}</a></li>
  </ul>
 </div>

上面的代码是使用JQuery的$.ajax 将json的数据引入,但如果你的项目里面没有使用到JQuery的话,就要使用到vue-resource.js了。

在html中引入:

<script src="/js/vue.js"></script>
<script src="/js/vue-resource.js"></script>

我第一次使用vue-resource.js的时候,和vue.js版本不匹配居然屡屡出错,这是新手必须要注意的。这是一个坑啊,如果你们运行下面的代码不能渲染的话,99%是遇到这个坑了。

<script>
  var app = new Vue({
el: '#app',
data: {
  peps: ''  
},
mounted: function() {
  this.getJsonInfo()
},
methods: {
  getJsonInfo: function() {
    this.$http.get('Category.json').then(function(response){
      console.log(response.data.data)
      var resdata = response.data.data
      this.peps = resdata
    }).catch(function(response){
      console.log(response)
      console.log("居然没有弹窗")
    })
  }
  }
})</script>

html处不用做其它修改。

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

Javascript 相关文章推荐
js 实现无缝滚动 兼容IE和FF
Jul 15 Javascript
jquery基础教程之数组使用详解
Mar 10 Javascript
使用JavaScript链式编程实现模拟Jquery函数
Dec 21 Javascript
angularJS中$apply()方法详解
Jan 07 Javascript
深入浅析JavaScript中对事件的三种监听方式
Sep 29 Javascript
jquery拖拽排序简单实现方法(效果增强版)
Feb 16 Javascript
js获取时间函数及扩展函数的方法
Oct 30 Javascript
jQuery鼠标移动图片上实现放大效果
Jun 25 jQuery
Bootstrap弹出框(Popover)被挤压的问题小结
Jul 11 Javascript
基于ES6作用域和解构赋值详解
Nov 03 Javascript
小程序实现新用户判断并跳转激活的方法
May 20 Javascript
详解JavaScript中的坐标和距离
May 27 Javascript
JS中去掉array中重复元素的方法
May 26 #Javascript
React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能
May 26 #Javascript
AngularJS表单验证功能分析
May 26 #Javascript
给Easyui-Datebox设置隐藏或者不可用的解决方法
May 26 #Javascript
vue-cli+webpack在生成的项目中使用bootstrap实例代码
May 26 #Javascript
BootStrap中的Fontawesome 图标
May 25 #Javascript
Vue.js 中的 $watch使用方法
May 25 #Javascript
You might like
删除及到期域名的查看(抢域名必备哦)
2008/05/14 PHP
PHP 存储文本换行实现方法
2010/01/05 PHP
PHPUnit PHP测试框架安装方法
2011/03/23 PHP
精美漂亮的php分页类代码
2013/04/02 PHP
PHP-FPM和Nginx的通信机制详解
2019/02/01 PHP
javascript 模拟点击广告
2010/01/02 Javascript
JavaScript实现数字数组按照倒序排列的方法
2015/04/06 Javascript
浅谈JavaScript中的Math.atan()方法的使用
2015/06/14 Javascript
基于jQuery实现自动轮播旋转木马特效
2015/11/02 Javascript
深入理解$.each和$(selector).each
2016/05/15 Javascript
写jQuery插件时的注意点
2017/02/20 Javascript
xmlplus组件设计系列之树(Tree)(9)
2017/05/02 Javascript
原生JS实现的简单小钟表功能示例
2018/08/30 Javascript
浅谈vue中$bus的使用和涉及到的问题
2020/07/28 Javascript
在vue中使用image-webpack-loader实例
2020/11/12 Javascript
[45:34]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.18
2020/12/19 DOTA
go和python调用其它程序并得到程序输出
2014/02/10 Python
深入理解Javascript中的this关键字
2015/03/27 Python
python获取目录下所有文件的方法
2015/06/01 Python
Python3.x爬虫下载网页图片的实例讲解
2018/05/22 Python
Python 实现自动完成A4标签排版打印功能
2020/04/09 Python
Python使用cn2an实现中文数字与阿拉伯数字的相互转换
2021/03/02 Python
css3图片边框border-image的用法
2017/06/30 HTML / CSS
西班牙著名的珠宝首饰品牌:P D PAOLA
2018/09/15 全球购物
新加坡最早生产电动滑板车的制造商之一:FunsToTheFore
2020/09/08 全球购物
编写一子程序,将一链表倒序,即使链表表尾变表头,表头变表尾
2016/02/10 面试题
化学相关工作求职信
2013/10/02 职场文书
安全承诺书范文
2014/03/26 职场文书
中小学校园安全广播稿
2014/09/29 职场文书
警察群众路线对照检查材料思想汇报
2014/10/01 职场文书
2015出纳试用期工作总结
2014/12/12 职场文书
调任通知
2015/04/21 职场文书
2015暑期社会实践通讯稿
2015/07/18 职场文书
2016教师校本培训心得体会
2016/01/08 职场文书
Python实现抖音热搜定时爬取功能
2022/03/16 Python
Python+Tkinter制作专属图形化界面
2022/04/01 Python