<html>
<head>
<meta http-equiv="Content-Type" content="textml; charset=utf-8">
<title>递归树形结构</title>
<script src="vue.js"></script>
<link rel="stylesheet" href="dingwei.css" type="text/css" />
</head>
<body>
<div id="app">
<tree :data="treedata"></tree>
</div>
</body>
<script>
Vue.component('tree-list', {
props:{
incrementCount:{
type:Number,
default:0
},
data:{
type:Array,
default:[]
}
},
computed:{
count(){
var c=this.incrementCount;
return ++c;
},
stylePadding(){
return {
"padding-left":this.count*16+"px"
}
}
},
template: `<ul><li v-for="item of data">
<div>
<span><strong>{{item.title}}</strong></span>
</div>
<tree-list
:style="[stylePadding]"
:increment-count="count"
v-if="item.chidren" :data="item.chidren"></tree-list>
</li>
</ul>`
})
Vue.component('tree', {
props:{
data:{
type:Array,
default:[]
}
},
template: `
<div>
<tree-list :data="data"></tree-list>
</div>
`
})
var data=[{
title:"第一级目录",
chidren:[{
title:"第二级目录",
chidren:[{
title:"第三级",
chidren:[{
title:"第四内容"
}]
},{
title:"第二级2",
chidren:[{
title:"第三内容"
}]
}]
},{
title:"第一级2"
}]
}];
new Vue({
el: '#app',
data:{
treedata:data
}
})
</script>
<ml>
<head>
<meta http-equiv="Content-Type" content="textml; charset=utf-8">
<title>递归树形结构</title>
<script src="vue.js"></script>
<link rel="stylesheet" href="dingwei.css" type="text/css" />
</head>
<body>
<div id="app">
<tree :data="treedata"></tree>
</div>
</body>
<script>
Vue.component('tree-list', {
props:{
incrementCount:{
type:Number,
default:0
},
data:{
type:Array,
default:[]
}
},
computed:{
count(){
var c=this.incrementCount;
return ++c;
},
stylePadding(){
return {
"padding-left":this.count*16+"px"
}
}
},
template: `<ul><li v-for="item of data">
<div>
<span><strong>{{item.title}}</strong></span>
</div>
<tree-list
:style="[stylePadding]"
:increment-count="count"
v-if="item.chidren" :data="item.chidren"></tree-list>
</li>
</ul>`
})
Vue.component('tree', {
props:{
data:{
type:Array,
default:[]
}
},
template: `
<div>
<tree-list :data="data"></tree-list>
</div>
`
})
var data=[{
title:"第一级目录",
chidren:[{
title:"第二级目录",
chidren:[{
title:"第三级",
chidren:[{
title:"第四内容"
}]
},{
title:"第二级2",
chidren:[{
title:"第三内容"
}]
}]
},{
title:"第一级2"
}]
}];
new Vue({
el: '#app',
data:{
treedata:data
}
})
</script>
<ml>