const MenuItem = {
props: {
icon:{
type:String
},
level:{
type:Number,
default:0
},
mode:{
type:String
},
hasTitle:{
type: Boolean,
}
},
methods:{
handleClick(evt){
this.$emit('click',evt);
}
},
render(h) {
const {...props} = this.$props;
const icon = props.icon? `icon iconfont ${props.icon} `:'';
const hasTitle = props.hasTitle
const level = props.level
const itemProps={
props:{
level:level
},
attrs:{
title:this.$slots.default[0].text
},
on:{
click:this.handleClick
}
}
return (
<li class="pl-Smenus-item" {...itemProps} >
<a class="title" >
{icon!=''&&(<i class={icon}></i>)}
<span v-show={hasTitle || (!hasTitle && level > 0)} class="txt">{this.$slots.default}</span>
</a>
</li>
)
}
}
export default MenuItem;