自定义的组件中没有办法添加直接添加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("请求失败");
}
});
}
});
雷雷
你props接收的是detail, 你又用users, 你这user哪来的?
给你定义的组件添加一个props,列如cdata属性,用来传递数据,在父件引用组件
<childComponent cdata="yourAjaxDATA"><childComponent>,这样子组件就可以cdata.attr来访问你AJAX请求的数据了
最上面定义的组件中直接收到了一个变量detail,users是父组件的变量,子组件无法直接调用。
感觉你这个写的有点乱,一个id可以绑定两个vue?