Browse Source

fix(collapse): 修复小程序环境下使用手风琴模式无效问题 (#1830)

Kwan 3 years ago
parent
commit
355d345850
1 changed files with 19 additions and 3 deletions
  1. 19 3
      src/packages/__VUE/collapse/index.taro.vue

+ 19 - 3
src/packages/__VUE/collapse/index.taro.vue

@@ -114,10 +114,26 @@ export default create({
           let doms: any = childrenDom.value;
           let doms: any = childrenDom.value;
           Array.from(doms).forEach((item: any, index: number) => {
           Array.from(doms).forEach((item: any, index: number) => {
             if (typeof newval == 'number' || typeof newval == 'string') {
             if (typeof newval == 'number' || typeof newval == 'string') {
-              if (newval == domsProps[index].props.name) {
-                item.changeOpen(true);
+              if (domsProps[index]) {
+                if (domsProps[index].props) {
+                  if (newval == domsProps[index].props.name) {
+                    item.changeOpen(true);
+                  } else {
+                    item.changeOpen(false);
+                  }
+                } else {
+                  if (newval == item.name) {
+                    item.changeOpen(true);
+                  } else {
+                    item.changeOpen(false);
+                  }
+                }
               } else {
               } else {
-                item.changeOpen(false);
+                if (newval == item.name) {
+                  item.changeOpen(true);
+                } else {
+                  item.changeOpen(false);
+                }
               }
               }
             } else if (Object.values(newval) instanceof Array) {
             } else if (Object.values(newval) instanceof Array) {
               if (
               if (