因为没有使用vue做一个真正完整的项目,所以乘着这个项目比较闲的时间,对标项目用vue做一些页面,丰富自己的项目经验。所以接下来基本都是一些简单的功能。
目标:一级导航点击收缩展开,二级导航点击选中
源码 主要是思路,具体的就不放了
<ul class="sidebar-menu">
<li class="treeNav" v-for="(item,index) in configNav">
<a href="javascript:void(0)" @click="showToggle(index)">{{item.name}}</a>
<ul :class="{'active' :index===isShow}">
<li v-for = "nav in item.subItems">
<a :href="nav.link"
:class="{'active':nav.link == linkClick}"
@click = "treeNavSwitch(nav)">
{{nav.text}}</a>
</li>
</ul>
</li>
</ul>
<script>
export default {
data () {
return {
isShow:0,
linkClick:'',
configNav:[
{
name:'交换&路由',
subItems:[
{ link:'#/callSource',text: '呼叫源',click:true },
{ link:'#/cancld',text: '号码分析' },
{ link:'#/route',text: '出局路由' }
]
},
{
name:'组织&资源',
subItems:[
{ link:'#/org',text: '组织' },
{ link:'#/term',text: '终端' },
]
}
]
}
},
methods:{
showToggle:function(index){
this.isShow = index;
},
treeNavSwitch:function(nav){
this.linkClick = nav.link;
}
}
}
</script>