@@ -115,6 +115,7 @@ Builder.prototype.j2x = function(jObj, level) {
115
115
//repeated nodes
116
116
const arrLen = jObj [ key ] . length ;
117
117
let listTagVal = "" ;
118
+ let listTagAttr = "" ;
118
119
for ( let j = 0 ; j < arrLen ; j ++ ) {
119
120
const item = jObj [ key ] [ j ] ;
120
121
if ( typeof item === 'undefined' ) {
@@ -124,8 +125,12 @@ Builder.prototype.j2x = function(jObj, level) {
124
125
else val += this . indentate ( level ) + '<' + key + '/' + this . tagEndChar ;
125
126
// val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;
126
127
} else if ( typeof item === 'object' ) {
127
- if ( this . options . oneListGroup ) {
128
- listTagVal += this . j2x ( item , level + 1 ) . val ;
128
+ if ( this . options . oneListGroup ) {
129
+ const result = this . j2x ( item , level + 1 ) ;
130
+ listTagVal += result . val ;
131
+ if ( this . options . attributesGroupName && item . hasOwnProperty ( this . options . attributesGroupName ) ) {
132
+ listTagAttr += result . attrStr
133
+ }
129
134
} else {
130
135
listTagVal += this . processTextOrObjNode ( item , key , level )
131
136
}
@@ -140,7 +145,7 @@ Builder.prototype.j2x = function(jObj, level) {
140
145
}
141
146
}
142
147
if ( this . options . oneListGroup ) {
143
- listTagVal = this . buildObjectNode ( listTagVal , key , '' , level ) ;
148
+ listTagVal = this . buildObjectNode ( listTagVal , key , listTagAttr , level ) ;
144
149
}
145
150
val += listTagVal ;
146
151
} else {
0 commit comments