通过JSON数据使用VUE.JS

作者: 凉风有兴 | 来源:发表于2017-05-26 01:36 被阅读2026次

最近接到一个比较简单的项目,不准备使用数据库,打算用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}}"> {{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处不用做其它修改。

相关文章

网友评论

    本文标题:通过JSON数据使用VUE.JS

    本文链接:https://www.haomeiwen.com/subject/avrtfxtx.html