File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -247,21 +247,18 @@ class VdomLifecycle extends Base {
247247 }
248248
249249 // Distribute results back to ALL components in the batch
250- response . results . forEach ( ( result , index ) => {
251- const
252- payload = Object . values ( updates ) [ index ] ,
253- componentId = payload . vnode ?. id || payload . vdom ?. id ,
254- component = Neo . getComponent ( componentId ) ;
250+ Object . entries ( response . vnodes ) . forEach ( ( [ id , vnode ] ) => {
251+ const component = Neo . getComponent ( id ) ;
255252
256253 if ( component && ! component . isDestroyed ) {
257- component . vnode = result . vnode ;
254+ component . vnode = vnode ;
258255
259256 // Resolve the update for this component and its merged children
260257 // Note: response.deltas contains the aggregated deltas for the whole batch
261258 component . resolveVdomUpdate ( {
262259 deltas : response . deltas ,
263- vnode : result . vnode
264- } , VDomUpdate . getMergedChildIds ( componentId ) ) ;
260+ vnode
261+ } , VDomUpdate . getMergedChildIds ( id ) ) ;
265262 }
266263 } ) ;
267264 }
Original file line number Diff line number Diff line change @@ -785,24 +785,24 @@ class Helper extends Base {
785785 * Processes a map of updates sequentially and aggregates the results.
786786 * @param {Object } data
787787 * @param {Object } data.updates A map of update config objects: {componentId: updateOpts}
788- * @returns {Object } { deltas: Object[], results : Object[] }
788+ * @returns {Object } { deltas: Object[], vnodes : Object }
789789 */
790790 updateBatch ( data ) {
791791 let me = this ,
792792 allDeltas = [ ] ,
793- results = [ ] ,
793+ vnodes = { } ,
794794 result ;
795795
796- Object . values ( data . updates ) . forEach ( updateOpts => {
796+ Object . entries ( data . updates ) . forEach ( ( [ id , updateOpts ] ) => {
797797 result = me . update ( updateOpts ) ;
798798 allDeltas . push ( ...result . deltas ) ;
799- results . push ( { vnode : result . vnode } ) ;
799+ vnodes [ id ] = result . vnode ;
800800 } ) ;
801801
802802 return {
803803 deltas : allDeltas ,
804- results : results ,
805- updateVdom : true
804+ updateVdom : true ,
805+ vnodes
806806 }
807807 }
808808}
You can’t perform that action at this time.
0 commit comments