Skip to content

Commit

Permalink
当弹出层的绑定data没有变更,重复打开不会重置form
Browse files Browse the repository at this point in the history
  • Loading branch information
akebe committed Jan 11, 2020
1 parent 44fe61b commit 5d05792
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 9 deletions.
14 changes: 9 additions & 5 deletions packages/components/address-dialog/ElAddressDialog.vue
Original file line number Diff line number Diff line change
Expand Up @@ -90,13 +90,18 @@
computed: {},
methods: {
open(data = {}, options = {}) {
this.mData = Object.assign({}, defaultData, data);
if (this.baseData !== data) {
this.$refs.form && this.$refs.form.clear();
this.mData = Object.assign({}, defaultData, data);
this.baseData = data;
}
this.mOptions = Object.assign({}, defaultOptions, options);
this.visible = true;
this.$nextTick(() => {
this.visible = true;
});
return new Promise((resolve => {
this.resolve = resolve;
}));
},
confirm() {
this.$refs.form.validate(valid => {
Expand All @@ -123,12 +128,11 @@
});
},
closed() {
this.$refs.form.clear();
this.loadingClose();
},
beforeClose(done) {
if (this.mOptions.beforeClose) {
this.mOptions.beforeClose(this.mData, done);
this.mOptions.beforeClose({...this.mData}, done);
} else {
done();
}
Expand Down
6 changes: 4 additions & 2 deletions src/App.vue
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
</template>

<script>
import ElementAddress from 'element-address';
import {ElementAddress} from './main.js';
export default {
name: 'app',
Expand All @@ -49,6 +49,7 @@
city: '',
area: '',
},
testData: {},
};
},
methods: {
Expand Down Expand Up @@ -90,13 +91,14 @@
});
},
dialog() {
ElementAddress.$dialog({}, {
ElementAddress.$dialog(this.testData, {
beforeResolve: (data, done) => {
setTimeout(() => {
done();
}, 1000);
},
}).then(result => {
this.testData = {};
this.$alert(JSON.stringify(result, null, 2), {
title: '结果',
dangerouslyUseHTMLString: true,
Expand Down
8 changes: 6 additions & 2 deletions src/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import App from './App.vue';
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

import ElementAddress from 'element-address';
//import ElementAddress from 'element-address';

//import ElementAddress from '../packages/index.js';
import ElementAddress from '../packages/index.js';

//import ElementAddress from '../lib/element-address.umd.js';

Expand All @@ -19,3 +19,7 @@ Vue.config.productionTip = false;
new Vue({
render: h => h(App),
}).$mount('#app');

export {
ElementAddress,
};

0 comments on commit 5d05792

Please sign in to comment.