Ovilia commented on code in PR #17349:
URL: https://github.com/apache/echarts/pull/17349#discussion_r919631231
##########
src/chart/custom/CustomView.ts:
##########
@@ -1316,24 +1322,43 @@ function mergeChildren(
// might be better performance.
let index = 0;
for (; index < newLen; index++) {
- newChildren[index] && doCreateOrUpdateEl(
- api,
- el.childAt(index),
- dataIndex,
- newChildren[index] as CustomElementOption,
- seriesModel,
- el
- );
+ const newChild = newChildren[index];
+ const oldChild = el.childAt(index);
+ if (newChild) {
+ doCreateOrUpdateEl(
+ api,
+ oldChild,
+ dataIndex,
+ newChild as CustomElementOption,
+ seriesModel,
+ el
+ );
+ }
+ else {
+ removeChildFromGroup(el, oldChild, seriesModel);
Review Comment:
I think this mainly depends on how we understand *merging*. I don't think
it's intuitive to use the old element in a group when provided `null` in new
`setOption`. This is just like when providing series data like `[10, 20, null,
40]` in a new `setOption` should not take the null data to use the old value in
the previous data.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]