* [jsfm] fix the computed classList issue in legacy framework

Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/d7537b29
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/d7537b29
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/d7537b29

Branch: refs/heads/0.16-dev
Commit: d7537b291549d2c1c107d7760f0d9948d55fb48d
Parents: d239389
Author: Hanks <zhanghan...@gmail.com>
Authored: Fri Jul 28 14:53:38 2017 +0800
Committer: Hanks <zhanghan...@gmail.com>
Committed: Fri Jul 28 14:53:38 2017 +0800

----------------------------------------------------------------------
 html5/frameworks/legacy/vm/directive.js | 7 +++++++
 1 file changed, 7 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/d7537b29/html5/frameworks/legacy/vm/directive.js
----------------------------------------------------------------------
diff --git a/html5/frameworks/legacy/vm/directive.js 
b/html5/frameworks/legacy/vm/directive.js
index 42cc04a..fec7252 100644
--- a/html5/frameworks/legacy/vm/directive.js
+++ b/html5/frameworks/legacy/vm/directive.js
@@ -232,6 +232,12 @@ function setAttr (vm, el, attr) {
 }
 
 function setClassStyle (el, css, classList) {
+  if (typeof classList === 'string') {
+    classList = classList.split(/\s+/)
+  }
+  classList.forEach((name, i) => {
+    classList.splice(i, 1, ...name.split(/\s+/))
+  })
   const classStyle = {}
   const length = classList.length
 
@@ -253,6 +259,7 @@ function setClass (vm, el, classList) {
   if (typeof classList !== 'function' && !Array.isArray(classList)) {
     return
   }
+  console.log(` => setClass:`, classList)
   if (Array.isArray(classList) && !classList.length) {
     el.setClassStyle({})
     return

Reply via email to