fixed #1553
This commit is contained in:
parent
6da6fffa1d
commit
daa9827c92
3 changed files with 114 additions and 106 deletions
|
@ -1,19 +1,13 @@
|
||||||
<template>
|
<template>
|
||||||
<div style="width: 400px;">
|
<div style="margin: 100px;width: 200px;">
|
||||||
<Row>
|
<Cascader :data="data" v-model="value1" change-on-select></Cascader>
|
||||||
<i-col span="12">
|
|
||||||
<Cascader transfer v-model="value3" :data="data" filterable></Cascader>
|
|
||||||
</i-col>
|
|
||||||
<i-col span="12">
|
|
||||||
<Cascader v-model="value3" :data="data" filterable></Cascader>
|
|
||||||
</i-col>
|
|
||||||
</Row>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
|
value1: [],
|
||||||
data: [{
|
data: [{
|
||||||
value: 'beijing',
|
value: 'beijing',
|
||||||
label: '北京',
|
label: '北京',
|
||||||
|
@ -60,8 +54,7 @@
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
}],
|
}]
|
||||||
value3: []
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<script>
|
<script>
|
||||||
import Casitem from './casitem.vue';
|
import Casitem from './casitem.vue';
|
||||||
import Emitter from '../../mixins/emitter';
|
import Emitter from '../../mixins/emitter';
|
||||||
import { findComponentUpward } from '../../utils/assist';
|
import { findComponentUpward, findComponentDownward } from '../../utils/assist';
|
||||||
|
|
||||||
let key = 1;
|
let key = 1;
|
||||||
|
|
||||||
|
@ -84,6 +84,14 @@
|
||||||
changeOnSelect: this.changeOnSelect,
|
changeOnSelect: this.changeOnSelect,
|
||||||
fromInit: fromInit
|
fromInit: fromInit
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// #1553
|
||||||
|
if (this.changeOnSelect) {
|
||||||
|
const Caspanel = findComponentDownward(this, 'Caspanel');
|
||||||
|
if (Caspanel) {
|
||||||
|
Caspanel.$emit('on-clear', true);
|
||||||
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
this.sublist = [];
|
this.sublist = [];
|
||||||
this.dispatch('Cascader', 'on-result-change', {
|
this.dispatch('Cascader', 'on-result-change', {
|
||||||
|
@ -135,9 +143,16 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
this.$on('on-clear', () => {
|
// deep for #1553
|
||||||
|
this.$on('on-clear', (deep = false) => {
|
||||||
this.sublist = [];
|
this.sublist = [];
|
||||||
this.tmpItem = {};
|
this.tmpItem = {};
|
||||||
|
if (deep) {
|
||||||
|
const Caspanel = findComponentDownward(this, 'Caspanel');
|
||||||
|
if (Caspanel) {
|
||||||
|
Caspanel.$emit('on-clear', true);
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Reference in a new issue