Version
@visactor/openinula-vchart on develop at 0750d74cd6ea734e66897876506c78ca12680676
Link to Minimal Reproduction
Render <VChart spec={stableSpec} data={firstData} />, then re-render it with the same spec object and a different data value.
Steps to Reproduce
- Create an OpenInula VChart with both the documented
spec and data props.
- Keep
spec unchanged.
- Replace
data with a new dataset and re-render.
Current Behavior
BaseChart enters the hasSpec branch and compares only eventsBinded.current.spec with props.spec. Because the spec is unchanged, the effect returns without updating the chart. parseSpec also does not merge the separate data prop into spec, so the data prop is ignored on initial creation as well.
Expected Behavior
The OpenInula wrapper should honor its declared data prop with a supplied spec, both initially and on data-only updates.
Environment
- OS: Windows 11
- Node.js: 20.20.2 and 24.14.1
- Package:
@visactor/openinula-vchart
Any additional comments?
The React wrapper already implements the intended behavior: it merges data into a supplied spec and calls updateFullDataSync when only data changes. That support was added in commit d69cb49fb for #2443, but the equivalent logic is absent from the OpenInula wrapper. The OpenInula package currently has no focused tests for this lifecycle path, so a port should add coverage for both initial and data-only updates.
I searched open and closed issues and pull requests for OpenInula data updates, hasSpec, BaseChart, and updateFullDataSync; I reviewed #2443 and both wrappers' histories. #2443 is specifically about react-vchart and its fix did not update openinula-vchart. The repository has no Discussions, and I found no existing OpenInula report or fix.
Version
@visactor/openinula-vchartondevelopat0750d74cd6ea734e66897876506c78ca12680676Link to Minimal Reproduction
Render
<VChart spec={stableSpec} data={firstData} />, then re-render it with the samespecobject and a differentdatavalue.Steps to Reproduce
specanddataprops.specunchanged.datawith a new dataset and re-render.Current Behavior
BaseChartenters thehasSpecbranch and compares onlyeventsBinded.current.specwithprops.spec. Because the spec is unchanged, the effect returns without updating the chart.parseSpecalso does not merge the separatedataprop intospec, so the data prop is ignored on initial creation as well.Expected Behavior
The OpenInula wrapper should honor its declared
dataprop with a supplied spec, both initially and on data-only updates.Environment
@visactor/openinula-vchartAny additional comments?
The React wrapper already implements the intended behavior: it merges
datainto a supplied spec and callsupdateFullDataSyncwhen onlydatachanges. That support was added in commitd69cb49fbfor #2443, but the equivalent logic is absent from the OpenInula wrapper. The OpenInula package currently has no focused tests for this lifecycle path, so a port should add coverage for both initial and data-only updates.I searched open and closed issues and pull requests for OpenInula data updates,
hasSpec,BaseChart, andupdateFullDataSync; I reviewed #2443 and both wrappers' histories. #2443 is specifically about react-vchart and its fix did not update openinula-vchart. The repository has no Discussions, and I found no existing OpenInula report or fix.