Tresjs / tres

Declarative ThreeJS using Vue Components
https://tresjs.org
MIT License
2.2k stars 107 forks source link

comment on first line of templates affects rendering #528

Open BenoitBotton opened 8 months ago

BenoitBotton commented 8 months ago

Describe the bug

a select is meant to swap between sets of objects in the scene. when the code has a comment on the first line of the template, objects are added to the scene, the old ones are not removed.

Reproduction

https://stackblitz.com/edit/tresjs-basic-hmkhgf?file=src%2Fcomponents%2FDonut.vue

Steps to reproduce

run the stackblitz. change the select to 'donuts 1', a second set of donuts is added to the scene.

delete the comment in the template (Donut.vue) and refresh the view this time when switching using the select, the scene objects are changed, not added

System Info

No response

Used Package Manager

npm

Code of Conduct

andretchen0 commented 6 months ago

Reproduction

Here's a minimal reproduction.

Maybe relevant?

For an eventual fix, it might be worth looking into /src/core/nodeOps.ts. It doesn't return a value from a createComment call.

garrlker commented 4 months ago

Just tested the 4.0.2 release in your reproduction, it looks like #717 did not fix it. We'll have to do more digging into how v-for is working behind the scenes