mirror of https://github.com/ElemeFE/element
Dialog: remove v-model dependency of manual manipulation (#1038)
parent
0fffead922
commit
22bc5f312a
|
@ -46,7 +46,7 @@
|
||||||
"async-validator": "^1.6.6",
|
"async-validator": "^1.6.6",
|
||||||
"deepmerge": "^1.2.0",
|
"deepmerge": "^1.2.0",
|
||||||
"throttle-debounce": "^1.0.1",
|
"throttle-debounce": "^1.0.1",
|
||||||
"vue-popup": "^0.2.10",
|
"vue-popup": "^0.2.12",
|
||||||
"wind-dom": "0.0.3"
|
"wind-dom": "0.0.3"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<template>
|
<template>
|
||||||
<transition name="dialog-fade">
|
<transition name="dialog-fade">
|
||||||
<div class="el-dialog__wrapper" v-show="value" @click.self="handleWrapperClick">
|
<div class="el-dialog__wrapper" v-show="visible" @click.self="handleWrapperClick">
|
||||||
<div
|
<div
|
||||||
class="el-dialog"
|
class="el-dialog"
|
||||||
:class="[sizeClass, customClass]"
|
:class="[sizeClass, customClass]"
|
||||||
|
@ -75,9 +75,18 @@
|
||||||
default: '15%'
|
default: '15%'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
visible: false
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
watch: {
|
watch: {
|
||||||
value(val) {
|
value(val) {
|
||||||
|
this.visible = val;
|
||||||
|
},
|
||||||
|
visible(val) {
|
||||||
|
this.$emit('input', val);
|
||||||
if (val) {
|
if (val) {
|
||||||
this.$emit('open');
|
this.$emit('open');
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
|
@ -101,7 +110,7 @@
|
||||||
methods: {
|
methods: {
|
||||||
handleWrapperClick() {
|
handleWrapperClick() {
|
||||||
if (this.closeOnClickModal) {
|
if (this.closeOnClickModal) {
|
||||||
this.$emit('input', false);
|
this.close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -6,7 +6,7 @@ describe('Dialog', () => {
|
||||||
destroyVM(vm);
|
destroyVM(vm);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('create', () => {
|
it('create', done => {
|
||||||
vm = createVue({
|
vm = createVue({
|
||||||
template: `
|
template: `
|
||||||
<div>
|
<div>
|
||||||
|
@ -22,9 +22,12 @@ describe('Dialog', () => {
|
||||||
}
|
}
|
||||||
}, true);
|
}, true);
|
||||||
const dialog = vm.$children[0];
|
const dialog = vm.$children[0];
|
||||||
|
setTimeout(() => {
|
||||||
expect(document.querySelector('.v-modal')).to.exist;
|
expect(document.querySelector('.v-modal')).to.exist;
|
||||||
expect(vm.$el.querySelector('.el-dialog__title').textContent).to.equal('dialog test');
|
expect(vm.$el.querySelector('.el-dialog__title').textContent).to.equal('dialog test');
|
||||||
expect(dialog.$el.style.display).to.not.equal('none');
|
expect(dialog.$el.style.display).to.not.equal('none');
|
||||||
|
done();
|
||||||
|
}, 10);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('render correct content', done => {
|
it('render correct content', done => {
|
||||||
|
|
Loading…
Reference in New Issue