Merge pull request #6201 from NineSwordsMonster/fix_modal_drag

Fix the problem of setting both draggable and custom top or left style causes the modal to move down or left when dragging
This commit is contained in:
debugIsFalse 2019-09-12 14:37:27 +08:00 committed by GitHub
commit feec6ef5df
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 3 deletions

View file

@ -82,7 +82,10 @@
default: false
},
styles: {
type: Object
type: Object,
default() {
return {};
}
},
className: {
type: String
@ -202,8 +205,10 @@
let style = {};
if (this.draggable) {
if (this.dragData.x !== null) style.left = `${this.dragData.x}px`;
if (this.dragData.y !== null) style.top = `${this.dragData.y}px`;
let customTop = this.styles.top ? parseFloat(this.styles.top) : 0;
let customLeft = this.styles.left ? parseFloat(this.styles.left) : 0;
if (this.dragData.x !== null) style.left = `${this.dragData.x - customLeft}px`;
if (this.dragData.y !== null) style.top = `${this.dragData.y - customTop}px`;
const width = parseInt(this.width);
const styleWidth = {
width: width <= 100 ? `${width}%` : `${width}px`