replay class attr which using inline styles with computed props
This commit is contained in:
parent
1c26d05c31
commit
76db49cd16
1 changed files with 16 additions and 2 deletions
|
@ -1,11 +1,11 @@
|
|||
<template>
|
||||
<div
|
||||
:class="wrapClasses"
|
||||
:style="{width: siderWidth + 'px', minWidth: siderWidth + 'px', maxWidth: siderWidth + 'px', flex: '0 0 ' + siderWidth + 'px'}">
|
||||
:style="wrapStyles">
|
||||
<span v-show="showZeroTrigger" @click="toggleCollapse" :class="zeroWidthTriggerClasses">
|
||||
<i class="ivu-icon ivu-icon-navicon-round"></i>
|
||||
</span>
|
||||
<div :class="`${prefixCls}-children`">
|
||||
<div :class="childClasses">
|
||||
<slot></slot>
|
||||
</div>
|
||||
<div v-show="showBottomTrigger" :class="triggerClasses" @click="toggleCollapse" :style="{width: siderWidth + 'px'}">
|
||||
|
@ -72,12 +72,23 @@
|
|||
this.isCollapsed ? `${prefixCls}-collapsed` : ''
|
||||
];
|
||||
},
|
||||
wrapStyles () {
|
||||
return {
|
||||
width: `${this.siderWidth}px`,
|
||||
minWidth: `${this.siderWidth}px`,
|
||||
maxWidth: `${this.siderWidth}px`,
|
||||
flex: `0 0 ${this.siderWidth}px`
|
||||
};
|
||||
},
|
||||
triggerClasses () {
|
||||
return [
|
||||
`${prefixCls}-trigger`,
|
||||
this.isCollapsed ? `${prefixCls}-trigger-collapsed` : '',
|
||||
];
|
||||
},
|
||||
childClasses () {
|
||||
return `${this.prefixCls}-children`;
|
||||
},
|
||||
zeroWidthTriggerClasses () {
|
||||
return [
|
||||
`${prefixCls}-zero-width-trigger`,
|
||||
|
@ -129,6 +140,9 @@
|
|||
on(window, 'resize', this.onWindowResize);
|
||||
this.matchMedia();
|
||||
this.$emit('input', this.defaultCollapsed);
|
||||
if (this.defaultCollapsed) {
|
||||
this.isCollapsed = true;
|
||||
}
|
||||
},
|
||||
destroyed () {
|
||||
off(window, 'resize', this.onWindowResize);
|
||||
|
|
Loading…
Add table
Reference in a new issue