From 7540059ae5340681c9d744a5d4485263c0f4f801 Mon Sep 17 00:00:00 2001 From: xzs02 Date: Wed, 23 Jan 2019 15:26:42 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3movable-view=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E5=8A=A8=E6=80=81=E6=98=BE=E7=A4=BA=E5=90=8E=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E7=9A=84=E9=97=AE=E9=A2=98=20#163?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../view/components/movable-area/index.vue | 23 +++++++++++-------- .../view/components/movable-view/index.vue | 8 ++++--- 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/src/core/view/components/movable-area/index.vue b/src/core/view/components/movable-area/index.vue index de6679e45..b5e463f90 100644 --- a/src/core/view/components/movable-area/index.vue +++ b/src/core/view/components/movable-area/index.vue @@ -26,12 +26,15 @@ export default { this.pinchStartLen = null }, mounted: function () { - this._getWH() - this.items.forEach(function (item, index) { - item.componentInstance.setParent() - }) + this._resize() }, methods: { + _resize () { + this._getWH() + this.items.forEach(function (item, index) { + item.componentInstance.setParent() + }) + }, _find (target, items = this.items) { var root = this.$el function get (node) { @@ -143,11 +146,13 @@ export default { var ours = this[`_${event}`] $listeners[event] = existing ? [].concat(existing, ours) : ours }) - return createElement( - 'uni-movable-area', - { - on: $listeners - }, items) + return createElement('uni-movable-area', { + on: $listeners + }, [createElement('v-uni-resize-sensor', { + on: { + resize: this._resize + } + }), ...items]) } } diff --git a/src/core/view/components/movable-view/index.vue b/src/core/view/components/movable-view/index.vue index adc13fe77..bbb4c1857 100644 --- a/src/core/view/components/movable-view/index.vue +++ b/src/core/view/components/movable-view/index.vue @@ -1,5 +1,6 @@ @@ -216,9 +217,7 @@ export default { }, mounted: function () { this.touchtrack(this.$el, '_onTrack') - if (this.$parent._isMounted) { - this.setParent() - } + this.setParent() this._friction.reconfigure(1, this.frictionNumber) this._STD.reconfigure(1, 9 * Math.pow(this.dampingNumber, 2) / 40, this.dampingNumber) this.$el.style.transformOrigin = 'center' @@ -460,6 +459,9 @@ export default { } }, setParent: function () { + if (!this.$parent._isMounted) { + return + } if (this._FA) { this._FA.cancel() } -- GitLab