iview/src/components/cascader/casitem.vue

35 lines
1.1 KiB
Vue
Raw Normal View History

2016-11-15 19:17:54 +08:00
<template>
2017-05-09 15:46:08 +08:00
<li :class="classes">
{{ data.label }}
2018-06-25 13:30:40 +08:00
<i v-if="showArrow" class="ivu-icon ivu-icon-ios-arrow-forward"></i>
2018-06-25 19:53:55 +08:00
<i v-if="showLoading" class="ivu-icon ivu-icon-ios-loading ivu-load-loop"></i>
2017-05-09 15:46:08 +08:00
</li>
2016-11-15 19:17:54 +08:00
</template>
<script>
export default {
2017-03-06 17:30:39 +08:00
name: 'Casitem',
2016-11-15 19:17:54 +08:00
props: {
data: Object,
prefixCls: String,
tmpItem: Object
},
computed: {
classes () {
return [
`${this.prefixCls}-menu-item`,
{
2016-11-15 23:23:16 +08:00
[`${this.prefixCls}-menu-item-active`]: this.tmpItem.value === this.data.value,
[`${this.prefixCls}-menu-item-disabled`]: this.data.disabled
2016-11-15 19:17:54 +08:00
}
2016-12-25 22:49:42 +08:00
];
2017-05-09 15:46:08 +08:00
},
showArrow () {
return (this.data.children && this.data.children.length) || ('loading' in this.data && !this.data.loading);
},
showLoading () {
return 'loading' in this.data && this.data.loading;
2016-11-15 19:17:54 +08:00
}
}
2016-12-25 22:49:42 +08:00
};
</script>