搜索

首页  >  问答  >  正文

javascript - 怎么把ajax获取到的数据添加到组建中

自定义的组件中没有办法添加直接添加v-for吗,为什么我一把v-for加上之后这一部分就不再加载了呢,我怎么才能把ajax获取到的数据放到这里面,请大神帮忙指点一下,小弟感激不尽

Vue.component('my-article',{
props:['detail','user'],
template:'<h6>{{detail.title}}</h6>'+
         '<table id="phone">'+
            '<thead>'+
                '<tr>'+
                    '<td style="width: 150px;">{{detail.department}}</td>'+
                    '<td style="width: 119px;">{{detail.phone1}}</td>'+
                    '<td style="width: 121px;">{{detail.phone2}}</td>'+
                '</tr>'+
            '</thead>'+
            '<tbody>'+
                '<tr v-for="data in users" :user="data">'+
                    '<td>{{user.name}}</td>'+
                    '<td>{{user.details1}}</td>'+
                    '<td>{{user.details2}}</td>'+
                '</tr>'+
            '</tbody>'+
        '</table>'
});

这么才能让它只循环执行tr那一段呢

let vm = new Vue({
el:"#module-duty",
data:{
    article:{
        title:"值班单位电话",
        department:"单位",
        phone1:"内线电话",
        phone2:"外线电话"
    },
    users:""
},
created:function(){
    $.ajax({
        url:"http://localhost:8080/opseyetem/post/find.do",
        type:"post",
        dataType:"json",
        success:function(result){
            if(result.state==0){
                vm.users = result.data;
            }
        },
        error:function(){
            alert("请求失败");
        }
    });
}

});

大家讲道理大家讲道理2748 天前537

全部回复(4)我来回复

  • 为情所困

    为情所困2017-05-19 10:40:29

    雷雷

    回复
    0
  • 黄舟

    黄舟2017-05-19 10:40:29

    你props接收的是detail, 你又用users, 你这user哪来的?

    回复
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-19 10:40:29

    给你定义的组件添加一个props,列如cdata属性,用来传递数据,在父件引用组件
    <childComponent cdata="yourAjaxDATA"><childComponent>,这样子组件就可以cdata.attr来访问你AJAX请求的数据了

    回复
    0
  • 黄舟

    黄舟2017-05-19 10:40:29

    最上面定义的组件中直接收到了一个变量detail,users是父组件的变量,子组件无法直接调用。
    感觉你这个写的有点乱,一个id可以绑定两个vue?

    回复
    0
  • 取消回复