From 558815c24e0bade16c2cc1a1973bd3b9e7d91e07 Mon Sep 17 00:00:00 2001 From: AidenCao Date: Mon, 6 Feb 2017 15:50:14 +0800 Subject: [PATCH 1/4] fix addClass util bug MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `` --- src/platforms/web/runtime/class-util.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/platforms/web/runtime/class-util.js b/src/platforms/web/runtime/class-util.js index 80d866d73a8..4319de79fbc 100644 --- a/src/platforms/web/runtime/class-util.js +++ b/src/platforms/web/runtime/class-util.js @@ -12,6 +12,7 @@ export function addClass (el: Element, cls: ?string) { /* istanbul ignore else */ if (el.classList) { + cls = cls.trim() if (cls.indexOf(' ') > -1) { cls.split(/\s+/).forEach(c => el.classList.add(c)) } else { From ababf5fd6aacf196b439756401b7fda05304f8cd Mon Sep 17 00:00:00 2001 From: AidenCao Date: Mon, 6 Feb 2017 16:02:08 +0800 Subject: [PATCH 2/4] fix addClass util bug MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `` --- src/platforms/web/runtime/class-util.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/platforms/web/runtime/class-util.js b/src/platforms/web/runtime/class-util.js index 4319de79fbc..3e83aba4cbb 100644 --- a/src/platforms/web/runtime/class-util.js +++ b/src/platforms/web/runtime/class-util.js @@ -6,13 +6,12 @@ */ export function addClass (el: Element, cls: ?string) { /* istanbul ignore if */ - if (!cls || !cls.trim()) { + if (!cls || !(cls = cls.trim())) { return } /* istanbul ignore else */ if (el.classList) { - cls = cls.trim() if (cls.indexOf(' ') > -1) { cls.split(/\s+/).forEach(c => el.classList.add(c)) } else { From 61463c3c17493b9c03945bb413623c34d31b28b6 Mon Sep 17 00:00:00 2001 From: AidenCao Date: Mon, 6 Feb 2017 16:02:08 +0800 Subject: [PATCH 3/4] fix addClass util bug MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `` --- src/platforms/web/runtime/class-util.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/platforms/web/runtime/class-util.js b/src/platforms/web/runtime/class-util.js index 4319de79fbc..a33449af3e0 100644 --- a/src/platforms/web/runtime/class-util.js +++ b/src/platforms/web/runtime/class-util.js @@ -6,13 +6,12 @@ */ export function addClass (el: Element, cls: ?string) { /* istanbul ignore if */ - if (!cls || !cls.trim()) { + if (!cls || !(cls = cls.trim())) { return } /* istanbul ignore else */ if (el.classList) { - cls = cls.trim() if (cls.indexOf(' ') > -1) { cls.split(/\s+/).forEach(c => el.classList.add(c)) } else { @@ -32,7 +31,7 @@ export function addClass (el: Element, cls: ?string) { */ export function removeClass (el: Element, cls: ?string) { /* istanbul ignore if */ - if (!cls || !cls.trim()) { + if (!cls || !(cls = cls.trim())) { return } From 48f62fcb9eb2bca9b6aaae4c33a7803bde880946 Mon Sep 17 00:00:00 2001 From: AidenCao Date: Mon, 6 Feb 2017 19:33:20 +0800 Subject: [PATCH 4/4] update test case for `addClass / removeClass` util --- test/unit/features/transition/transition.spec.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/unit/features/transition/transition.spec.js b/test/unit/features/transition/transition.spec.js index 22fa39d8a3f..7d65eeacefa 100644 --- a/test/unit/features/transition/transition.spec.js +++ b/test/unit/features/transition/transition.spec.js @@ -73,7 +73,7 @@ if (!isIE9) { enter-to-class="hello-to" leave-class="bye" leave-to-class="bye-to" - leave-active-class="byebye active"> + leave-active-class="byebye active more ">
foo
@@ -85,9 +85,9 @@ if (!isIE9) { expect(vm.$el.innerHTML).toBe('
foo
') vm.ok = false waitForUpdate(() => { - expect(vm.$el.children[0].className).toBe('test bye byebye active') + expect(vm.$el.children[0].className).toBe('test bye byebye active more') }).thenWaitFor(nextFrame).then(() => { - expect(vm.$el.children[0].className).toBe('test byebye active bye-to') + expect(vm.$el.children[0].className).toBe('test byebye active more bye-to') }).thenWaitFor(duration + buffer).then(() => { expect(vm.$el.children.length).toBe(0) vm.ok = true